thread线程小结
线程和进程的区别
1.进程是程序的一次执行过程,是系统运行程序的基本单位。
2.线程是进程的基本单位,一个进程至少包含一个线程。
什么是主线程?有什么特点?
当Java程序启动时,一个线程立刻运行,该线程通常叫做程序的主线程。它的重要性主要体现在两方面:
- 主线程可以产生新的子线程。
- 通常主线程最后完成执行操作,因为它要执行各种关闭动作。
线程创建有几种方式
创建线程的主要方式有四种。
1.继承Thread类,重写run()
方法。
2.实现Runnable接口,实现run()
方法。
3.实现Callable接口,该接口与Runnable的区别在于该方法有返回值,Runnable没有返回值。
4.通过Executor 的工具类创建线程池,最好使用ThreadPoolExecutor创建,以减少资源浪费。
线程如何启动?调用start方法和直接调用run方法有什么区别
线程创建后调用start()
方法会启动该线程并进入就绪状态,分配到时间片后就可以开始运行了,然后自动调用run()
方法;直接执行run()
方法的话,会把run()
方法当做main线程下的一个普通方法来执行,而不是作为一个线程。