java之多執行緒

2021-09-23 18:37:54 字數 1288 閱讀 4302

1. 序列與併發

在程式執行的過程中, 程式可能會有很多的任務需要處理。那麼這些任務在處理的時候, 可以按照不同的方式來進行:

**序列: **所有的任務,按照一定的順序,先後執行。前面的任務沒有執行結束,則後面所有的任務都需要等待

**併發: **某一些任務可以被同時處理

2. 程序與執行緒

程序:是乙個程式執行所占用的資源描述。乙個程序是乙個程式,乙個程式可能不止乙個程序。

執行緒:是程式執行的最小單元。

程序和執行緒的關係

乙個程序中包含多條執行緒,且至少包含一條執行緒。如果乙個程序中所有的執行緒都執行結束了,此時,這個程序也就結束了。

乙個程序在開闢完成後,會自動的建立乙個執行緒。這個執行緒叫做 主線程。在這裡開闢的其他所有的執行緒都是 子執行緒。

3. 多執行緒的幾種開闢方式

thread這個類是執行緒類,是用來描述一條執行緒的。我們所謂的開闢執行緒,其實就是例項化乙個thread物件。

繼承thread類,寫乙個thread類的子類。

重寫run方法,並在run方法裡面執行要併發處理的任務

執行緒物件例項化完成後,不能直接通過呼叫run()的方式,來執行run方法中的邏輯

如果希望run方法中的邏輯在乙個新的執行緒中執行,則需要呼叫的是start方法

設計乙個runnable介面的實現類,通過這個實現類物件去例項化乙個thread物件

兩種實現方式的對比優點

缺點繼承thread

語法簡單、語義明朗、可讀性強

可能會對原有的繼承結構造成影響

實現runnable介面

沒有繼承上的限制

語義沒有繼承明朗、可讀性較差

start和run的異同

案例**:

繼承thread類:

class

mythread

extends

thread}}

public

class

program

}

實現runnable介面:

public

class

program}}

} thread t =

newthread

(t);

t.start()

;}

Java之多執行緒

執行緒的狀態 繼承thread類和實現runable介面,新執行緒執行,即是執行run 方法裡的內容 public class testthread extends thread if count 10 0 catch interruptedexception e run方法結束即當前執行緒結束 p...

java之多執行緒

建立乙個執行緒的方法有三種,thread,runnable 實現,實現callable call 作為實體,可以返回try,catch 1.thread t new thread 2.class x implements runable thread t new thread new x 3.cal...

java之多執行緒

首先本文是建立在大家對程序和執行緒有一點了解的基礎上的。如程序執行緒了解不多的話,可以參考 程序 執行緒 多執行緒相關總結 建立執行緒類的子類 class subthread extends thread 執行緒建立方式2 runnable介面建立執行緒 class runnableimpl imp...