Java多线程

为什么需要多线程:

        从单任务到多任务,从多道处理到分时处理,计算机的资源利用率和并发性越来越高。

优势:

        发挥多核处理器的强大能力。完成多任务时,考虑不同任务之间的优先级和时间。异步事件的简化处理和响应灵敏的用户结面。

基础知识:

(1) 创建状态:用构造方法创建了一个线程对象后,新的线程对象便处于新建状态,此时它拥有相应的内存空间和资源但处于不可运行状态。

(2) 就绪状态:调用新建线程的start()方法就可以启动线程。启动时,线程进入就绪状态。此时,线程将进入线程队列排队,等待CPU的服务,表明它已经具备了运行条件。

(3) 运行状态:就绪状态的线程被调用并获得处理器资源时,线程就进入了运行状态。此时,自动调用线程对象的run() 方法,该方法定义了该线程的操作和功能。

(4) 堵塞状态:一个正在执行的线程如果需要人为执行耗时的输入或输出操作,将让出CPU并暂时中止自己的执行,进入堵塞状态。堵塞时,线程不能进入队列排队,只有当引起堵塞的原因消除时,线程才能再转入就绪状态。

(5) 终止状态:线程调用stop() 或者 run() 方法执行结束后,即处于终止状态,不再具有继续运行的能力。

Java多线程_第1张图片

你可能感兴趣的:(Java多线程)