成人免费无码不卡毛片,亚洲AⅤ无码精品一区二区三区,国产尤物精品视频,久久精品日本亚洲,欧美成人一区三区无码乱码A片,中文字日产幕码一区二区色哟哟,亞洲日韓中文字幕網AV

  • 正文
  • 相關(guān)推薦
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

線程同步中一定得加鎖嗎

2023/03/02
1159
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

線程同步中為了保護(hù)數(shù)據(jù),使程序可以按照預(yù)想的方式運(yùn)行,往往需要加鎖。包括帶判斷的一讀一寫(xiě)也一樣

線程A:

if(test > 100)

{

testnum=test+10 ;

}
線程B:
test =test-20;

這個(gè)執(zhí)行完線程A的if(test > 100)語(yǔ)句后再切換到線程B,執(zhí)行test =test-20;然后再執(zhí)行線程A的testnum=test+10 ;就與預(yù)期結(jié)果不符。可以通過(guò)加鎖解決。

線程A:
加鎖:
if(test > 100)
{
testnum=test+10 ;
}
解鎖:
線程B:
加鎖:
test =test-20;
解鎖:

但是有的時(shí)候相關(guān)的賦值處于中斷或者中斷回調(diào)函數(shù)中,需要的鎖或者臨界區(qū)需要開(kāi)關(guān)中斷,頻繁開(kāi)關(guān)中斷比較影響性能也不太好??梢酝ㄟ^(guò)線程或者中斷的優(yōu)先級(jí)來(lái)處理(中斷的優(yōu)先級(jí)肯定是比線程高的)。分兩種情況:

讀的優(yōu)先級(jí)比寫(xiě)的高:

寫(xiě)了數(shù)據(jù)之后再立刻讀,讀完了再寫(xiě)。寫(xiě)完數(shù)據(jù)后通知讀的線程運(yùn)行,讀的優(yōu)先級(jí)較高(不會(huì)被寫(xiě)打斷),這樣通過(guò)優(yōu)先級(jí)區(qū)分讀寫(xiě)。

寫(xiě)的優(yōu)先級(jí)比讀高:

寫(xiě)的數(shù)據(jù)往往來(lái)源于中斷之類(lèi)的地方,優(yōu)先級(jí)比較高也不該終止,這樣將要讀寫(xiě)的數(shù)據(jù)存入循環(huán)隊(duì)列,這樣通過(guò)讀寫(xiě)隊(duì)列中的不同位置來(lái)達(dá)到保證數(shù)據(jù)一致性的問(wèn)題。

相關(guān)推薦

登錄即可解鎖
  • 海量技術(shù)文章
  • 設(shè)計(jì)資源下載
  • 產(chǎn)業(yè)鏈客戶(hù)資源
  • 寫(xiě)文章/發(fā)需求
立即登錄
广州市| 五家渠市| 寿宁县| 湘潭县| 永福县| 张家界市| 喀喇| 山阴县| 广元市| 天气| 民乐县| 莫力| 涿州市| 和林格尔县| 舞阳县| 汤原县| 阳朔县| 息烽县| 延吉市| 张家川| 东宁县| 吉木乃县| 平果县| 栾川县| 平原县| 岳普湖县| 应用必备| 宿州市| 进贤县| 永靖县| 奉新县| 油尖旺区| 信阳市| 铜鼓县| 阜宁县| 岚皋县| 福安市| 柯坪县| 吉木萨尔县| 南城县| 富川|