每个进程拥有自己的一整套变量,而线程则共享数据,这使得线程之间的通信比进程之间更有效。此外,在有些操作系统中,较进程,线程更轻量级,创建、撤销一个线程比启动一个进程的开销要小得多。
线程是分配处理器时间的最小单元。
1. 创建线程
1.1 扩展java.lang.Thread类
需要覆盖其run方法,一旦有一个Thread对象,就可以调用其start方法来启动线程。当线程启动时,其run方法就会被执行。
1.2 实现java.lang.Runnable接口
此接口有一个需要实现的Run方法(与Thread中的Run方法一样)。事实上,是Thread亲自实现Runnable接口的。用此种方法必须传递Runnable来实例化Thread类。