前言
線程是一個程序內部的順序控制流。cpu實際上在一個時間點上,只執行一個。只不過我們把cup分成了多個時間片,由于速度很快,我們看起來像是多個線程。就像你的時間分成幾片,這樣整體看來做事情有規律,效率就會高,何況是cup呢。
線程的創建和啟動:
(1)定義Thread
類的子類,并重寫了該類的run()
方法,該run()
方法的方法就代表了線程需要完成的任務。因此把run()
方法稱為線程執行體
(2)創建Thread
子類的實例,即創建了線程對象
(3)調用線程對象的start()
方法來啟動該線程
源代碼:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
// 通過繼承Thread類來創建線程類 public class FirstThread extends Thread { private int i; //重寫run()方法,run()方法的方法體是線程執行體 public void run() { for (;i< 100 ;i++) { //當線程類繼承Thread類時,直接使用this即可獲取當前數據 //Thread對象的getName()返回當前線程的名字 //因此可以直接調用getName()方法返回當前線程的名字 System.out.println(getName()+””+i); } } public static void main(String[] args) { for ( int i= 0 ;i< 100 ;i++) { //調用Thread的currentThread()方法獲取當前線程 System.out.println(Thread.currentThread().getName() +””+i); if (i== 20 ) { //創建并啟動第一個線程 new FirstThread().start(); //創建并啟動第二個線程 new FirstThread().start(); } } } } |
運行界面:
總結
以上就是本文的全部內容,希望對大家的學習和工作有所幫助。如果有疑問可以留言討論。