有序嚴謹的指令集稱為程序
程序同時的多運行稱為線程
程序中不同的執行路徑稱為線程
多線程編程簡單,效率高,易於資源共享
線程同步是指在執行一段程序過程中,無論成功還是失敗,其他線程都會等待著段程序執行完畢後才會轉入執行其他線程,這樣可以保證程序的完整性和安全性
創建線程的第一種方式:繼承Thread類,重寫Run方法
由上所示結果可知,並不是打印完"主線程"後才執行”子線程“ 而是兩個線程交替執行的
創建線程的第二種方式:實現Runnable接口,重寫接口中的Runnable方法
關於線程的優先級設置示例如下:(注意:線程級別高的,並不是絕對先執行它,而是執行概率大而已。好比把我買彩票中100萬的概率提高到90%,不中獎的概率降低到10%,並不是說我絕對中獎)
關於線程睡眠示例如下:創建線程睡眠時間代碼必須進行異常處理(只能捕捉try catch,不能拋異常 throws),在此例中執行到此線程時,先等待睡眠時間過後再執行該程序段,在多線程中,則是睡眠時間過後,此程序段有機會參與CPU執行,並不一定執行該程序段。簡單來說,多線程中指定睡眠時間的線程在該時間內不參與打團,時間結束後可能會去參團,也有可能繼續掛機。
則控制檯顯示的結果應該是兩秒鐘打印一次,循環打印到結束為止
注:關於異常的處理,我再多說兩句,throws拋異常時,如果主調處函數是實現或重寫該方法時,如果父類沒有拋異常的方法,則子類也不能拋異常只能捕捉異常。由上可知我們是實現runnable接口,該接口並沒有拋異常的方法,所以我們對線程睡眠進行異常處理的時候只能捕捉異常,而不能像上拋。
關於線程的讓步與阻塞
閱讀更多 十二說IT 的文章