日韩性视频-久久久蜜桃-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个线程实例的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 香蕉视频性 | 九九精品在线观看视频 | 青青草原亚洲 | 亚洲天堂第一 | 中文字幕在线乱 | 国产精品九九九 | 黄色片在哪里看 | 国产三级精品在线 | 久久久久久九九九九 | 人人看人人模 | 天天干天天日夜夜操 | 无码人妻精品一区二 | 欧美日韩国产中文字幕 | 日本一二三区不卡 | 河北彩花中文字幕 | 亚洲在线免费视频 | 欧美一级欧美三级在线观看 | 黄色av免费在线播放 | 欧美另类天堂 | 欧美色xxxxx| 99久久精品国产一区二区三区 | 国内黄色一级片 | 公车乳尖揉捏酥软呻吟 | 日本免费不卡一区二区 | 在线青草 | 黄网在线免费观看 | 亚洲图片综合区 | 在线播放国产精品 | 久久99国产精品久久99果冻传媒 | 中文字幕成人 | 日韩午夜激情电影 | 97av.com| 男男gay羞辱feet贱奴vk | 欧美天天性影院 | 老司机激情视频 | 被灌满精子的波多野结衣 | 久久久亚洲成人 | 日本免费一二三区 | 国产视频一区二区在线 | 一呦二呦三呦精品网站 | 在线视频 中文字幕 | 91精品国产一区二区无码 | 日韩欧美精品一区二区三区 | 日日夜夜骑 | 最好看的中文字幕国语电影mv | 久久无码性爱视频 | 日本在线网址 | 国产毛片毛片 | 欧美大片视频在线观看 | 亚洲国产精品无码久久久久高潮 | 日本加勒比一区二区 | 好看的av在线 | 成年人免费视频观看 | 无码人妻精品一区二区三 | 欧美高清日韩 | 操操网站| 亚洲AV无码一区二区三区蜜桃 | 国产精品毛片久久 | 亚洲男人天堂2018 | 日本三级视频在线观看 | av中文字幕免费在线观看 | 亚洲精品国产成人久久av盗摄 | 久久久久久久久久一区二区 | 亚洲少妇一区二区三区 | 欧美性开放视频 | 噜噜色网 | 日本黄视频在线观看 | 天天干视频在线观看 | 一区二区三区免费在线 | 精品日日夜夜 | 日本黄色免费看 | a级在线播放 | 黄网站在线免费 | 欧美成人性生活视频 | 国产成人97精品免费看片 | 亚洲色图插插插 | 国产精品免费电影 | 色偷偷888欧美精品久久久 | 精品国产大片大片大片 | 在线激情小视频 | 亚洲视频福利 | 亚洲国产av一区二区三区 | 久久综合资源 | 久久精品国产亚洲AV黑人 | 中文在线观看免费视频 | 婷婷激情四射 | 黄色录像片子 | 国产做受网站 | av成人在线电影 | 天天插天天干天天操 | 我要看免费的毛片 | 久久夜色精品国产欧美乱极品 | 国产精品羞羞答答在线 | 巨乳美女被爆操 | 国产素人在线观看 | 一级片黄色 | 日本精品视频在线播放 | 精品黑人一区二区三区在线观看 | 欧美一级爱爱 |