20165325 2017-2018-2 《Java程序設計》 第八週學習總結

1、教材學習筆記

ch12

一、程序是一段靜態的代碼,進程是程序的一次動態執行過程html

二、線程比進程還小,一個進程的進行期間能夠產生多個線程。mysql

三、Java內置對多線程的支持。咱們的計算機在任何給定說的時刻只能執行線程中的一個,Java虛擬機只是從一個線程迅速地切換到另外一個線程。git

四、線程的狀態與生命週期:(1)新建;(2)運行;(3)中斷;(4)死亡;sql

五、線程的經常使用方法多線程

  • start()方法:只有新建立的線程才能夠調用該方法。學習

  • run()方法:該方法是否運行結束是判斷線程是否結束的一個重要標準。只有當該方法運行結束後,線程才能再次調用start()方法。.net

  • sleep(int millsecond)方法:線程能夠調用該方法來使程序進入睡眠,知道過了參數指定的秒數事後才「醒來」。該方法必須在try-catch語句中調用,由於線程若是在休眠中被打斷,會拋出InterruptedException異常。線程

  • isAlive()方法:該方法用來判斷線程是否正在運行,如果,返回true,若不是,返回false。注意,一個已經運行的線程在沒有進入死亡狀態時,不要再給線程分配實體。code

  • currentThread()方法是Thread類中的類方法,返回當前使用CPU的線程。htm

  • interrupt()方法用來「喚醒」調用sleep方法而處於睡眠狀態的線程。

六、守護線程:線程默認是非守護線程,線程在運行以前必須設置本身是否爲守護線程。能夠調用voidsetDaemon(boolean on)來將本身設置成一個守護線程。當全部非守護線程運行結束時,守護線程必定會跟着結束。

2、碼雲連接

碼雲連接

3、代碼託管截圖


附:遇到的問題及部分解決方法

一、運行MySQL,任務管理器找不到mysql

參考連接:mysql服務裏面沒有啓動項

我使用net start mysql命令之後出現如下結果,成功啓動mysqld.exe,在任務管理器的截圖如圖所示。

二、進程三種基本狀態

進程的三種基本狀態是:就緒、執行、阻塞,這一點有別於線程;

參考連接進程三種基本狀態

三、Thread的構造方法

在Java中建立線程有兩種方法:使用Thread類和使用Runnable接口。

public Thread( );
public Thread(Runnable target);
public Thread(String name);
public Thread(Runnable target, String name);
public Thread(ThreadGroup group, Runnable target);
public Thread(ThreadGroup group, String name);
public Thread(ThreadGroup group, Runnable target, String name);
public Thread(ThreadGroup group, Runnable target, String name, long stackSize);

參考連接Thread的構造方法

四、interrupt()方法拋出的異常

參考連接線程的中斷-----使用線程對象的interrupt()方法

線程使用interrupt()方法,同時程序拋出InterruptedException異常.

相關文章
相關標籤/搜索