Java多线程启动方式
1.Java新建线程的方式:实现Runnable接口,或者继承Thread类。简单代码示例如下:
实现Runnable接口
继承Thread方法
2.线程的状态
线程的状态转换是线程控制的基础。线程状态总的可分为五大状态:分别是生、死、可运行、运行、等待/阻塞。
对于如何干预线程的运行,最直观的方式如下(不包括在其它地方给对象加锁,从而阻碍线程的运行)。
1).睡眠:Thread.sleep(long millis)和Thread.sleep(long millis, int nanos)静态方法强制当前正在执行的线程休眠(暂停执行),以“减慢线程”。
线程睡眠的原因:线程执行太快,或者需要强制进入下一轮,因为Java规范不保证合理的轮换。
另外,join()方法还有带超时限制的重载版本。 例如t.join(5000);则让线程等待5000毫秒,如果超过这个时间,则停止等待,变为可运行状态。