----------------------
windows phone 7手機開發、.net培訓
、 期待與您交流!----------------------
依據程式寫法,程式至少要有乙個程序,因為cpu通過程序同程式打交道
乙個程序至少有乙個執行緒
同乙個程序中的多個執行緒之間可以「併發執行」
執行緒是程式中的乙個執行流,每個執行緒都有自己的專有儲存器(棧指標、程式計數器等),但是**區是共享的,及不同的執行緒可以執行相同的函式。
多執行緒是指程式中包含多個執行流,即在乙個程式中可以同事執行多個不同的執行緒來執行不同的任務(**),也就是說單個程式能夠建立多個並行執行的點成來完成各自的任務。
1)請人做事==啟動乙個執行緒
2)讓他做什麼 == 通過委託呼叫
微軟建立執行緒類的時候不知道你要進行什麼操作,
所以需要你自己把要做的事傳給執行緒(要做的事寫成方法,然後通過委託把方法傳進執行緒)
為什麼用多執行緒
cpu通過呼叫程序來執行**,**執行時被載入到執行緒(thread)上。
在乙個程序(process)裡面,通過把**載入到乙個執行緒(thread)來執行。
應用程式啟動時候,cpu會自動建立乙個程序和乙個執行緒,這個執行緒是ui執行緒——也是預設執行緒——也是主線程。
1)利用多處理核心cpu的處理能力
2)讓乙個程式「同時」做多件事情
3)提高程式執行效率
4)後台執行程式,提供程式的執行效率,防止程式主介面失去響應(唯一的執行緒幹其他事情去了,導致對你的互動沒反應)
使用多執行緒過程
0)引入system.threading空間
0)編寫要執行的方法 == 做什麼 == 定義counttimes方法
1)thread
firstthread =
new thread
(counttimes); //請人做counttimes這個事情,括號內是把方法賦給下面兩個委託之一,firstthread呼叫委託
2)firstthread.start();//標記執行緒可執行,具體時間有cpu確定
question:
thread類執行緒能接受
parameterizedthreadstart
和threadstart
無返回值的委託。如果呼叫的方法有返回值怎麼辦。
前台執行緒和後台執行緒
firstthread.isbackgroud=true; //新執行緒設定為後台程序,這樣如果(所有)前台程序關閉後,後台程序即使沒執行完,也會關閉.
firstthread.start();
----------------------
windows phone 7手機開發、.net培訓
、 期待與您交流!----------------------
詳情請檢視
黑馬程式設計師 多執行緒
windows phone 7手機開發 net培訓 期待與您交流!一 程序與執行緒 l 程序 乙個執行的程式就是乙個程序,程序包括執行中的程式和程式需要用到的記憶體和系統資源 乙個程序至少有乙個執行緒,乙個程序中多個執行緒可以併發執行 l 執行緒 程式中的乙個執行流,每個執行緒都有自己的專有暫存器 ...
黑馬程式設計師 多執行緒
asp.net android io開發 net培訓 期待與您交流!執行緒與程序的關係 乙個程式就相當於乙個程序 乙個程序至少有乙個執行緒 同乙個程序中的多個執行緒之間可以 併發 執行 執行緒 1 乙個執行緒一次只能完成乙個任務 2 多執行緒方法重入 cpu是不斷的在多個執行緒之間來回切換執行的 3...
黑馬程式設計師 多執行緒
asp.net android ios開發 net培訓 期待與您交流!多執行緒為什麼要用多執行緒?1 讓計算機 同時 做多件事情,節約時間。2 後台執行程式,提高程式的執行效率,也不會使主介面出現無響應的情況。3 多執行緒可以讓乙個程式 同時 處理多個事情。4 計算機cpu 大部分時間處於空閒狀態,...