Java是一种多线程编程语言,这意味着我们可以使用Java开发多线程程序。多线程程序包含可以同时运行的两个或多个部分,并且每个部分可以同时处理不同的任务,从而充分利用可用资源,尤其是当您的计算机具有多个CPU时。
根据定义,多任务是指多个进程共享诸如CPU之类的通用处理资源。多线程将多任务的概念扩展到了应用程序中,您可以在其中将单个应用程序内的特定操作细分为各个线程。每个线程可以并行运行。OS不仅在不同的应用程序之间分配处理时间,还在应用程序中的每个线程之间分配处理时间。
多线程使您可以编写一种方式,使多个活动可以在同一程序中同时进行。
线程在其生命周期中会经历各个阶段。例如,线程是先生,启动,运行然后死亡的。下图显示了线程的完整生命周期。以下是生命周期的各个阶段。
新建-新线程以新状态开始其生命周期。它将保持这种状态,直到程序启动线程为止。也称为出生线程。
Runnable接口-一个刚出生的线程启动后,该线程进入可运行状态。处于此状态的线程被视为正在执行其任务。
等待中-有时,线程在等待另一个线程执行任务时会转换为等待状态。仅当另一个线程发出信号通知等待的线程继续执行时,线程才转换回可运行状态。
定时等待-可运行线程可以在指定的时间间隔内进入定时等待状态。当该时间间隔到期或发生等待事件时,处于此状态的线程将转换回可运行状态。
终止(终止) -可运行线程在完成其任务或终止时进入终止状态。