易语言多线程许可证的几点理解
線程是一個(gè)程序內(nèi)部的順序控制流。cpu實(shí)際上在一個(gè)時(shí)間點(diǎn)上,只執(zhí)行一個(gè)。只不過我們把cup分成了多個(gè)時(shí)間片,由于速度很快,我們看起來像是多個(gè)線程.線程許可證是用來解決并發(fā)沖突的!當(dāng)進(jìn)行多線程編程時(shí),在操作會(huì)進(jìn)行修改操作的程序集變量或全局變量時(shí),需要進(jìn)入許可區(qū)防止并發(fā)沖突,所以這個(gè)時(shí)候就需要一個(gè)排隊(duì)序號(hào),那就是許可證!如果你的多線程只是用來查詢、讀取或者都是局部變量的話,不需要?jiǎng)?chuàng)建許可區(qū)去解決并發(fā)沖突。
1、許可證的添加一般是子程序變量或者是全局變量
2、一般用許可證是在多個(gè)線程要同時(shí)寫一個(gè)集變量或全局變量才使用,同時(shí)讀不需要!
3、用多了許可證等于失去了多線程優(yōu)勢(shì),還不如不用!
4、操作量較大的話,一定要用許可證,因?yàn)榕掠行?shù)據(jù)在處理的過程中出現(xiàn)混亂的現(xiàn)象(操作網(wǎng)頁的時(shí)候就會(huì)出現(xiàn)亂碼)!
5、那么許可證在那個(gè)地方創(chuàng)建,那個(gè)地方刪除?在程序中啟動(dòng)多線程之前先創(chuàng)建一個(gè)許可證,并設(shè)置為全局變量,退出程序之前刪除許可證!創(chuàng)建和刪除是對(duì)應(yīng)的。
6、每個(gè)線程使用許可證對(duì)公共數(shù)據(jù)操作完后需立馬退出許可區(qū),不然其它線程如果也是訪問這個(gè)數(shù)據(jù),那么就處于等待狀態(tài),那就成了單線程了。
7、多線程許可證適用范圍:對(duì)程序集變量,全局變量,部分組件的讀寫需要使用許可證進(jìn)入后方能使用。
8、某些個(gè)組件,加了許可證,也不見的能長(zhǎng)時(shí)間穩(wěn)定!
9、計(jì)算機(jī)對(duì)于線程的執(zhí)行是搶占式策略,誰能搶到誰先執(zhí)行,2個(gè)線程操作 不同的子程序 而且又用2個(gè)許可證 和沒用許可證是一樣的!!!
?
總結(jié)
以上是生活随笔為你收集整理的易语言多线程许可证的几点理解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java编程规约
- 下一篇: Invalid command 'SSL