日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用lock同步线程,建立了10个线程实例

發布時間:2025/3/20 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用lock同步线程,建立了10个线程实例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在C#中處理同步
過對指定對象的加鎖和解鎖可以實現同步代碼段的訪問。
在.NET的System.Threading命名空間中提供了Monitor類來實現加鎖與解鎖。該類中的方法都是靜態的。
如下表:


C#中 lock關鍵字提供了與Monitoy.Enter和Monitoy.Exit同樣的功能,這種方法用在你的代碼段不能被其他獨立的線程中斷的情況。通過對Monitor類的簡易封裝,lock為同步訪問變量提供了一個非常簡單的方式,其用法如下:
lock(x)
{
?// 使用x的語句
}
lock語句把變量放在圓括號中,以包裝對象,稱為獨占鎖或排它鎖。當執行帶有lock關鍵字的復合語句時,獨占鎖會保留下來。當變量被包裝在獨占鎖中時,其他線程就不能訪問該變量。如果在上面的代碼中使用獨占鎖,在執行復合語句時,這個線程就會失去其時間片。如果下一個獲得時間片的線程試圖訪問變量,就會被拒絕。Windows會讓其他線程處于睡眠狀態,直到解除了獨占鎖為止。

?

Code
using?System;
using?System.Threading;


namespace?ConsoleApplication2
{
????
class?Account
????{
????????
int?balance;????// 余額
????????Random?r?=?new?Random();
????????
public?Account(int?initial)
????????{
????????????balance?
=?initial;
????????}
????????
//?取錢
????????int?Withdraw(int?amount)
????????{
????????????
if?(balance?<?0)
????????????????
throw?new?Exception("余額為負!");?
????????????
lock?(this)
????????????{
????????????????
if?(balance?>=?amount)
????????????????{
????????????????????Console.WriteLine(
"原有余額:??"?+?balance);
????????????????????Console.WriteLine(
"支取金額:?-"?+?amount);
????????????????????balance?
=?balance?-?amount;
????????????????????Console.WriteLine(
"現有余額:??"?+?balance);
????????????????????
return?amount;
????????????????}
????????????????
else
????????????????{
????????????????????
return?0;???//?拒絕交易
????????????????}
????????????}
????????}
????????
????????
//?測試交易
????????public?void?DoTransactions()
????????{
????????????
//?支取隨機的金額100次
????????????for?(int?i?=?0;?i?<?100;?i++)
????????????{
????????????????Withdraw(r.Next(
1,?100));
????????????}
????????}
????}
????
????
class?TestApp
????{
????????
public?static?void?Main()
????????{
????????????
//?建立10個線程同時進行交易
????????????Thread[]?threads?=?new?Thread[10];
????????????Account?acc?
=?new?Account(100000000);
????????????
for?(int?i?=?0;?i?<?10;?i++)
????????????{
????????????????Thread?t?
=?new?Thread(new?ThreadStart(acc.DoTransactions));
????????????????threads[i]?
=?t;
????????????}
????????????
for?(int?i?=?0;?i?<?10;?i++)
????????????{
????????????????threads[i].Start();
????????????}
????????}
????}
}

轉載于:https://www.cnblogs.com/0754ydj/archive/2008/12/18/1357677.html

總結

以上是生活随笔為你收集整理的使用lock同步线程,建立了10个线程实例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 波多一区| 亚洲成人免费视频 | 婷婷超碰| 97在线观看免费高清 | 男男play呻吟动漫网站 | 国产经典久久久 | 99久久影视 | 在线精品视频一区 | 很嫩很紧直喷白浆h | 国产男女在线 | 国产色图片| 中文字幕美女 | 五月婷婷在线播放 | 户外少妇对白啪啪野战 | 26uuu国产| 亚洲在线一区二区三区 | 久久青青草视频 | 精品国产视频在线 | 一区二区三区高清在线观看 | 琪琪五月天 | jlzzjlzzjlzz亚洲人| 国产一区二区视频免费在线观看 | 日韩特黄 | 波多野结衣家庭主妇 | 成人公开视频 | 欧美性插动态图 | 亚洲av无码乱码国产麻豆 | 果冻传媒18禁免费视频 | 中国黄色一级毛片 | 99国产在线播放 | 国产91嫩草 | 久久伊人精品视频 | 神马影院一区二区三区 | 高清性爱视频 | 神秘马戏团在线观看免费高清中文 | 国产成人免费视频网站 | 韩国美女一区 | 成人在线观看h | 国产人成精品 | 精品人妻久久久久久888不卡 | 国产午夜毛片 | 日本一区二区三区久久久久 | 久久不卡视频 | 污污视频在线观看免费 | 伊人中文网 | 中文字幕免费高清在线观看 | 天天搞天天 | 国产精品国产三级国产aⅴ下载 | 午夜影院在线观看 | 成人免费毛片高清视频 | 午夜精品一区二区三区在线播放 | 九色视频国产 | 大咪咪dvd | 韩国黄色网 | 午夜影院免费看 | 久久精品97 | 国产午夜网站 | 国产毛片网 | 一边顶弄一边接吻 | 黑人黄色一级片 | 婷婷的五月| 性欧美69 | www.88av| 91羞羞网站 | 久久一区 | 2025韩国大尺度电影 | 男女激情网址 | 99久久精品免费 | 欧美日韩亚洲国产 | 亚洲视频图片 | 亚拍一区 | 日日骑夜夜操 | 国产高清sp | 妺妺窝人体色777777 | 中文在线√天堂 | 国产欧美日韩在线观看 | 国产一区二区内射 | 国内精品免费 | 日韩视频在线免费播放 | 午夜激情免费 | 欧美xxxx性xxxxx高清 | 超碰91在线| 岛国福利视频 | 国产精品国产三级国产aⅴ浪潮 | 久久久国 | 波多野结衣av在线观看 | 亚洲av中文无码乱人伦在线视色 | 波多野结衣绝顶大高潮 | 国产成人短视频在线观看 | 羞羞漫画在线播放 | aaa在线视频| 国产视频999 | 欧美大色 | 张津瑜国内精品www在线 | 高清乱码毛片 | 国产又爽又黄无码无遮挡在线观看 | 毛毛毛片 | 可以免费在线观看的av | 午夜日韩精品 |