首先要了解什麼是程序,乙個程式正在執行,並且有獨立的功能,這叫做程序。
執行緒是指程序中的乙個執行流程,乙個程序中可以執行多個執行緒。
執行緒:執行緒是程序中的乙個執行單元,負責當前程序中程式的執行,乙個程序至少有乙個執行緒,乙個程序也可以有多個執行緒,多個執行緒同時執行指的是來回高速切換
程式執行的原理:
分時排程:所有執行緒輪流使用,平均分給每個執行緒去使用。
搶占時排程:先讓優先順序級別高的去使用,如果優先順序相同的話,那麼就進行執行緒隨即分配,隨即分配好比就是這個執行緒2秒,那個執行緒4秒,這種情況。
建立多執行緒的兩種方式:繼承thread類和實現runnable介面。
繼承:1 定義乙個類繼承thread。
2 重寫run方法。
3 建立子類物件,就是建立執行緒物件。
4 呼叫start方法
package com.oracle.demo01;//定義乙個類先繼承thread
public class mythread extends thread
}}
package com.oracle.demo01;public class demo01
}}
run()方法是不需要使用者來呼叫的,當通過start方法啟動乙個執行緒之後,當執行緒獲得了cpu執行時間,便進入run方法體去執行具體的任務。繼承thread類必須重寫run方法,在run方法中定義具體要執行的任務。
start()用來啟動乙個執行緒,當呼叫start方法後,系統才會開啟乙個新的執行緒來執行使用者定義的子任務,會為相應的執行緒分配需要的資源。
實現runnable介面:
1、定義類實現runnable介面。
2、覆蓋介面中的run方法。。
3. 建立執行緒任務物件
4、建立thread類的物件
5、將runnable介面的子類物件作為引數傳遞給thread類的建構函式。
5、呼叫thread類的start方法開啟執行緒。
package com.oracle.demo02;public class myrunnable implements runnable
}}
package com.oracle.demo02;public class demo01
}}
thread類與實現runnable介面的區別:
thread類只能實現單繼承,就相當於各做各的,完成各自的任務
runnable介面:避免了單繼承的侷限性,相當於拿出乙個任務,給三個人共同去完成
多執行緒 Thread類 建立執行緒
package thread 建立執行緒方式一 繼承 thread 類 重寫方法 run 呼叫 start 開啟執行緒 public class onethread extends thread public static void main string args 可以看出,main 方法和 ru...
Thread執行緒類及多執行緒
1.程序 執行緒 併發 並行是什麼?1 程序 作業系統中可以執行多個任務 程式 這些執行的任務 程式 被稱為程序。程式的執行產生程序 記憶體空間 程式執行的堆疊 可以這樣說,程序是作為作業系統分配資源的基本單位。3 併發 執行緒是併發執行的。作業系統將時間化分為若干個片段 時間片 盡可能的均勻分配給...
多執行緒Thread類例項
基於tcp協議的socket通訊,實現多個使用者登入。建立乙個伺服器類server,乙個客戶端類client,乙個繼承於多執行緒類的serverthread,從而實現多個客戶端向單個伺服器的連線。server類 public class server catch ioexception e clie...