Thread启动方式

  • new Thread().start()
  • new Thread(new Runnable()).start()
  • new Thread(new FutureTask(Callable callable)).start()
  • Executors.newCacheThreadPool().execute(Runnable r)

Thread的停止

stop 不能使用

等待run()执行结束

intercept() + Thread.currentThread().isIntercept();

在run内部调用Thread.sleep 在抛出异常 、捕获之前 会清除中断标记

控制线程的执行顺序

join

singleThread线程池

Thread状态及切换

New、Runnable(Ready、Running)、Blocked、Timed_Waiting、Terminated

线程状态

Thread关键词 yield join

sleep 休眠 时间到后 转为ready状态,获取执行的资格

wait 等待 需要notify 才能转为ready状态,获取执行的资格