C 基礎複習 四 多執行緒

2022-09-05 23:57:20 字數 593 閱讀 6883

單執行緒和多執行緒的區別

單執行緒:

只用主線程處理,如果乙個操作在占用主線程,那麼其他操作則無法執行

多執行緒:

除了主線程外,還開啟了子執行緒來執行操作,子執行緒執行操作時,主線程一樣可以執行其他操作,但子

執行緒無法使用主線程的控制項,主線程也沒法知道子執行緒什麼時候執行完成

關閉跨執行緒檢測,讓子執行緒可以用主線程的控制項

checkforillegalcrossthreadcalls = false;

語法

thread th = new

thread();

th.start();

//開啟執行緒

為了防止主線程和子執行緒衝突(同時操作乙個控制項),我們可以給執行緒加鎖,這樣其他執行緒就會等加鎖的執行緒執行完

lock(this

)

執行緒睡眠

讓執行緒等待幾秒後再繼續執行

thread.sleep(毫秒);

非同步非同步操作和執行緒類似,但是執行完成後會回到主線程

關鍵字async

.iscompleted() 非同步是否執行完成

java基礎複習 多執行緒

第一節 兩種建立方法 1繼承thread類,並複寫run方法 2實現runnable介面,並複寫run方法 3兩種方式的特點和優缺點,以及應用。賣票程式中,使用1方法建立的執行緒,每建立乙個執行緒,都有100張票。而我們想要的多個執行緒共同操作這100張票,這時就要使用第二種方法。第二節 執行緒的執...

c 多執行緒(四)

執行緒間通訊 主線程建立子執行緒必定會為主執行緒分擔一部分工作,這樣不可避免的會在這兩個執行緒之間存在訊息傳遞渠道,因此主線程和子執行緒之間要進行通訊。下面介紹幾種通訊方式 全域性變數 由於同一程序的各個執行緒之間共享該程序的資源,因此,解決執行緒間通訊最簡單的方式是使用全域性變數。對於標準型別的全...

C 基礎 多執行緒筆記 四 執行緒池

現在到了關於多線最簡單使用的最後一篇筆記。無論從什麼角度來看,每一項事物都應該有其所在的空間,而對於執行緒來說,執行緒池就是它所存在的空間,或者叫容器了。接下來,看看這個執行緒池是如何使用的吧!概念 manualresetevent,通知乙個或多個正在等待的執行緒已發生事件 manualresete...