版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
易語言綜合技術(shù)特訓(xùn)第一階段:易語言編程第九課:深入多線程本課內(nèi)容010203多線程的同步操作一個多線程實(shí)例如何啟動多線程?1.回顧線程2.線程是如何工作的?線程執(zhí)行起來是沒有任何順序的。線程是在CPU中進(jìn)行執(zhí)行的。1.什么是線程?線程是CPU的執(zhí)行單位,所有代碼都是在線程中被執(zhí)行的。一個進(jìn)程一定會有一個線程。3.什么是主線程?主線程由系統(tǒng)在進(jìn)程啟動時自動創(chuàng)建。在窗口程序中,主線程就是窗口的UI線程。4.線程操作:創(chuàng)建線程、線程句柄、線程ID、暫停線程、回復(fù)線程、強(qiáng)制結(jié)束線程、關(guān)閉線程句柄、獲取線程返回值。以及線程參數(shù)的傳遞。2.創(chuàng)建多線程1.什么時候需要創(chuàng)建線程?a.有操作會長時間占用線程的時候。例如:讀入一個大文件。b.有同時需要進(jìn)行的工作時。2.如何創(chuàng)建多個線程?由于每一個線程都是獨(dú)立的,重復(fù)多次調(diào)用“啟動線程”或“線程_啟動”即可。3.多個線程可不可以執(zhí)行同一個(線程)子程序?變量會不會沖突?可以的。線程之間是相互獨(dú)立的。所以局部變量不會互相沖突。但是,涉及到程序集、全局、靜態(tài)變量則要小心使用。3.多線程同步1.回顧多線程的執(zhí)行方式。。。2.為什么要對多線程進(jìn)行同步?線程執(zhí)行是搶占式的,而且由于運(yùn)行時的不保證,所以,一句代碼可能還沒有執(zhí)行完,CPU就切換到另一個線程的代碼了。3.多線程同步的幾種方式:a.原子鎖。b.許可區(qū)。線程執(zhí)行起來是沒有任何順序的。線程是在CPU中進(jìn)行執(zhí)行的。一個CPU核心只能同時執(zhí)行一個線程,所以CPU會隨時執(zhí)行一個線程。由于CPU的快速切換,所以使程序看起來是在連續(xù)執(zhí)行。由于現(xiàn)在的CPU都是多核多線程,所以就可以同時執(zhí)行多個線程。線程1:線程2:線程3:一個CPU核心線程代碼在執(zhí)行的時候,很有可能剛剛執(zhí)行一半,CPU就發(fā)生了切換,這個時候,就會執(zhí)行其他的代碼,這樣我們就不能完全保證程序按照我們的預(yù)期來進(jìn)行執(zhí)行了。代碼執(zhí)行:線程a:
線程b:變量=10變量=變量+1
變量=變量+1變量=變量
變量=變量+1(變量=變量)+1原子鎖什么是原子鎖?——以原子(單線程)的方式來操作一個變量。DLL命令如下:(整數(shù)型)InterlockedIncrement(整數(shù)型,傳址)——原子遞增(整數(shù)型)InterlockedDecrement(整數(shù)型,傳址)——原子遞減(整數(shù)型)InterlockedExchangeAdd(整數(shù)型,傳址,整數(shù)型)——原子增加數(shù)值(整數(shù)型)InterlockedExchange(整數(shù)型,傳址,整數(shù)型)(原子賦值)什么是許可區(qū)?——一次只有一個線程能進(jìn)入到許可區(qū)內(nèi),其他線程要在外面等。直到這一個線程退出許可區(qū)。官方支持庫:多線程支持庫中的命令:創(chuàng)建進(jìn)入許可證()進(jìn)入許可區(qū)()退出許可區(qū)()刪除進(jìn)入許可證()許可區(qū)中場休息對比一下“原子鎖”和“許可區(qū)”各自的優(yōu)缺點(diǎn)??纯磧烧咴谑褂玫膱龊嫌惺裁床煌??生成多個隨機(jī)數(shù),然后進(jìn)行計(jì)算算數(shù)程序1.使用庫命令來生成隨機(jī)數(shù)3.啟動多個線程來分別計(jì)算每一項(xiàng)的值4.將所有值顯示在列表框?qū)?yīng)位置5.統(tǒng)計(jì)所有的結(jié)果,求出結(jié)果的平均數(shù)2.將生成的隨機(jī)數(shù)保存到超級列表框中要避免的問題1.同步的時候,尤其是使用許可區(qū)的方式,要注意許可區(qū)的退出。如果沒有退出許可區(qū)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 科技類展會成果評估與科技轉(zhuǎn)化思考
- 供暖服務(wù)運(yùn)維方案投標(biāo)方案供暖服務(wù)運(yùn)維投標(biāo)方案(技術(shù)方案)
- 二零二五年度存量房買賣合同與裝修工程委托管理服務(wù)合同4篇
- 2025年仁愛科普版九年級地理下冊月考試卷
- 2025年蘇教新版九年級歷史下冊月考試卷
- 2025年人教新起點(diǎn)選修6歷史上冊月考試卷含答案
- 2025年教科新版七年級物理上冊階段測試試卷含答案
- 2025年北師大版八年級生物下冊月考試卷
- 2025年蘇教新版九年級歷史上冊階段測試試卷含答案
- 2025年新世紀(jì)版選擇性必修3歷史下冊月考試卷含答案
- 2024年中考語文滿分作文6篇(含題目)
- 第一節(jié)-貨幣資金資料講解
- 如何提高售后服務(wù)的快速響應(yīng)能力
- 北師大版 2024-2025學(xué)年四年級數(shù)學(xué)上冊典型例題系列第三單元:行程問題“拓展型”專項(xiàng)練習(xí)(原卷版+解析)
- 2023年譯林版英語五年級下冊Units-1-2單元測試卷-含答案
- Unit-3-Reading-and-thinking課文詳解課件-高中英語人教版必修第二冊
- 施工管理中的文檔管理方法與要求
- DL∕T 547-2020 電力系統(tǒng)光纖通信運(yùn)行管理規(guī)程
- 種子輪投資協(xié)議
- 執(zhí)行依據(jù)主文范文(通用4篇)
- 浙教版七年級數(shù)學(xué)下冊全冊課件
評論
0/150
提交評論