线程的基本概念、线程的基本状态及状态之间的关系?
进程
一开始进程既是资源分配的基本单位,又是调度运行的基本单位。随着操作系统的发展其定位发生了变化:不再作为调度运行的单位,而只是作为资源分配的基本单位。因此,实现并发功能的单位是线程。
如果把进程理解为在逻辑上操作系统所完成的任务,那么线程则被认为是实现该任务的众多子任务之一。线程可以在处理器上独立调度执行,于是,在多处理器环境下就允许几个线程各自在单独处理器上进行(疑问1:目前一个处理器上应该可以运行多个线程吧)。
引入线程的好处
(1)易于调度。
(2)提高并发性。通过线程可方便有效地实现并发性。进程可创建多个线程来执行同一程序的不同部分。
(3)开销少。创建线程比创建进程要快,所需开销很少。。
(4)利于充分发挥多处理器的功能。通过创建多线程进程(即一个进程可具有两个或更多个线程),每个线程在一个处理器上运行,从而实现应用程序的并发性,使每个处理器都得到充分运行。
线程与进程的区别?
进程和线程的关系
(1)一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程。
(2)资源分配给进程,同一进程的所有线程共享该进程的所有资源。
(3)处理机分给线程,即真正在处理机上运行的是线程。
(4)线程在执行过程中,需要协作同步。不同进程的线程间要利用消息通信的办法实现同步。
待续