前言:
程化是指同时执行编程过程以提高应用程序性能的实践。虽然直接在业务应用程序中使用线程并不常见,但它们一直在Java框架中使用。
例如,处理大量信息的框架(如Spring Batch)使用线程来管理数据。同时操作线程或CPU进程可提高性能,从而实现更快,更高效的程序。
找到你的第一个线程:Java的main()方法
即使你从未直接使用Java线程,你也间接使用它们,因为Java的main()方法包含一个主线程。无论何时执行该main()方法,您都执行了main Thread。
学习Thread该类对于理解线程在Java程序中的工作方式非常有帮助。我们可以通过调用currentThread().getName()方法来访问正在执行的线程,如下所示:
|
此代码将打印“main”,标识当前正在执行的线程。知道如何识别正在执行的线程是吸收线程概念的第一步。
Java线程生命周期
使用线程时,了解线程状态至关重要。Java线程生命周期包含六种线程状态:
- New:Thread()已经实例化了一个新的。
- Runnable接口:本Thread的start()方法被调用。
- Running:start()已调用该方法并且线程正在运行。
- Suspended:线程暂时挂起,可以由另一个线程恢复。
- Blocked:线程正在等待机会运行。当一个线程已经调用该synchronized()方法并且下一个线程必须等到它完成时,就会发生这种情况。
- Terminated:线程的执行完成。
图1. Java线程生命周期的六种状态
还有更多关于线程状态的探索和理解,但图1中的信息足以让您解决这个Java挑战。
并发处理:扩展Thread类
最简单的是,通过扩展Thread类来完成并发处理,如下所示。
|