單執行緒和多執行緒的區別
單執行緒:
只用主線程處理,如果乙個操作在占用主線程,那麼其他操作則無法執行
多執行緒:
除了主線程外,還開啟了子執行緒來執行操作,子執行緒執行操作時,主線程一樣可以執行其他操作,但子
執行緒無法使用主線程的控制項,主線程也沒法知道子執行緒什麼時候執行完成
關閉跨執行緒檢測,讓子執行緒可以用主線程的控制項
checkforillegalcrossthreadcalls = false;
語法
thread th = newthread();
th.start();
//開啟執行緒
為了防止主線程和子執行緒衝突(同時操作乙個控制項),我們可以給執行緒加鎖,這樣其他執行緒就會等加鎖的執行緒執行完
lock(this)
執行緒睡眠
讓執行緒等待幾秒後再繼續執行
thread.sleep(毫秒);
非同步非同步操作和執行緒類似,但是執行完成後會回到主線程
關鍵字async
.iscompleted() 非同步是否執行完成
java基礎複習 多執行緒
第一節 兩種建立方法 1繼承thread類,並複寫run方法 2實現runnable介面,並複寫run方法 3兩種方式的特點和優缺點,以及應用。賣票程式中,使用1方法建立的執行緒,每建立乙個執行緒,都有100張票。而我們想要的多個執行緒共同操作這100張票,這時就要使用第二種方法。第二節 執行緒的執...
c 多執行緒(四)
執行緒間通訊 主線程建立子執行緒必定會為主執行緒分擔一部分工作,這樣不可避免的會在這兩個執行緒之間存在訊息傳遞渠道,因此主線程和子執行緒之間要進行通訊。下面介紹幾種通訊方式 全域性變數 由於同一程序的各個執行緒之間共享該程序的資源,因此,解決執行緒間通訊最簡單的方式是使用全域性變數。對於標準型別的全...
C 基礎 多執行緒筆記 四 執行緒池
現在到了關於多線最簡單使用的最後一篇筆記。無論從什麼角度來看,每一項事物都應該有其所在的空間,而對於執行緒來說,執行緒池就是它所存在的空間,或者叫容器了。接下來,看看這個執行緒池是如何使用的吧!概念 manualresetevent,通知乙個或多個正在等待的執行緒已發生事件 manualresete...