《Java程序設計》第8周學習總結 20165218 2017-2018-1

20165218 2017-2018-1 《Java程序設計》第8周學習總結

教材學習內容總結

第12章 java多線程機制

java中的線程

  • 計算機在任何給定時刻只能執行一個線程,多線程機制是指java虛擬機快速地切換線程,使他們輪流執行
  • Thread類及其子類的對象表示線程
  • 線程的一個生命週期有新建、運行、中斷、死亡四個狀態
  • setPriority(int grade)方法調整線程優先級

線程的經常使用方法

  • start() 只有新建狀態的線程才能夠調用
  • run() 沒有具體內容,用戶程序須要建立本身的Thread類的子類,重寫run()方法;執行完畢後,線程死亡
  • sleep(int millsecond)調用使高優先級的線程暫時進入休眠;必須在try-catch中使用
  • isAlive() 線程處在新建和死亡狀態時,該方法返回false,處在運行狀態時,返回true
  • currentThread()返回正在使用CPU資源的線程
  • interrupt()用來「吵醒」調用了sleep方法的線程

線程同步

使用synchronized修飾的方法,需遵照同步機制:當一個線程A使用synchronized方法時,其它線程想要使用這個方法就必須等待,直到線程A使用完畢html


協調同步的線程

  • wait()方法能夠中斷線程的執行,暫時讓出CPU使用權
  • wait()方法必須用notifyAll()方法喚醒
  • wait()方法、notify()notifyAll()都是Object類中的final方法,不容許被重寫

線程聯合

//線程A在使用CPU資源的期間
B.join();

A馬上中斷,直到線程B執行完畢java


代碼託管

(statistics.sh腳本的運行結果截圖)git

上週考試錯題總結

  • 錯題1

Connection是類名不是方法名數據庫

  • 錯題2 多線程

  • ...學習

參考資料

相關文章
相關標籤/搜索