一.线程状态的切换

5种

并发编程详细整理

 

二.深入理解run()start()

run方法就是普通对象的普通方法,只有调用了start()后,Java才会将线程对象和操作系统中实际的线程进行映射,再来执行run方法

package concurrent;
/**
 * start()和run()的区别
 */
public class StartAndRun {
    public static class ThreadRun extends Thread{

        @Override
        public void run() {
            int i = 90;
            while(i>0){
                try {
                    Thread.sleep(1000);
                } catch (InterruptedException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                System.out.println("I am "+Thread.currentThread().getName()
                        +" and now the i="+i--);
            }
        }
    }

    public static void main(String[] args) {
        ThreadRun beCalled = new ThreadRun();
        beCalled.setName("BeCalled");
        beCalled.run();
        //beCalled.start();
    }
}

 运行结果:

并发编程详细整理

放开start(),注释run()之后:

并发编程详细整理

 三.ForkJoin 框架

思想:分而治之

并发编程详细整理

 

相关文章:

  • 2021-07-30
  • 2021-11-05
  • 2022-12-23
  • 2021-12-29
  • 2022-12-23
  • 2021-07-06
  • 2023-04-04
  • 2021-11-30
猜你喜欢
  • 2021-05-28
  • 2021-07-30
  • 2022-02-19
  • 2021-11-09
  • 2022-01-06
  • 2021-07-14
  • 2022-01-11
相关资源
相似解决方案