Java 多线程编程全解析
1. 线程基础概念
在 Java 编程中,线程是一个重要的概念。线程分为异步任务和同步任务。异步任务意味着执行 main() 方法的线程在继续执行之前,不会等待每个新创建线程的结果。例如,在代码中,第 5 行和第 6 行可能在第 4 行创建的线程完成之前就被执行。而同步任务则相反,程序会在第 4 行等待线程执行完毕后,才会继续执行下一行。在之前的 Java 编程中,绝大多数方法调用都是同步的。
需要注意的是,虽然线程启动后执行顺序是不确定的,但单个线程内的执行顺序仍然是线性的,比如 for() 循环依然是有序执行的,并且“begin”总是出现在“end”之前。
在启动线程时,要特别注意不要调用 run() 方法来启动线程,而应该使用 start() 方法。调用 Thread 或 Runnable 的 run() 方法并不会启动一个新线程。以下代码虽然可以编译,但不会在单独的线程中执行任务:
System.out.println("begin");
new Thread(printInventory).run();
new Thread(printRecords).run();
new Thread(printInventory).run();
System.out.println("end");
与使用 start()
超级会员免费看
订阅专栏 解锁全文
10万+

被折叠的 条评论
为什么被折叠?



