重点技术-20180829-JAVA线程Thread的run和start

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/namelessfighter/article/details/82181999

Thread中有run和start两个方法。
run是以普通的方法运行,当有多个thread都run方法循环运行,那么将会一个个按顺序运行;
start是以独立线程运行,当有多个thread都start方法循环运行,那么将会以非阻塞的方式同时在运行。

如:
public class TestThread extends Thread
{
        private Integer number;
        public TestThread(number)
        {
                this.number = number;
        }

        @Override
        public void run()
        {
                System.out.println("Hello : "+this.number );
        }
}

run方式运行
for(int i=0;i<1000;i++)
{
        new  TestThread(i).run();
}
打印结果将是:(严格的按调用顺序,一个执行完再执行下一个)
Hello : 0
Hello : 1
Hello : 2
Hello : 3
Hello : 4
……

start方式运行
for(int i=0;i<1000;i++)
{
        new  TestThread(i).start();
}
打印结果将是:(会真正的运行1000个线程)
Hello : 1
Hello : 5
Hello : 6
Hello : 4
Hello : 10
……

猜你喜欢

转载自blog.csdn.net/namelessfighter/article/details/82181999