国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

c# lock

2019-11-17 02:21:36
字體:
供稿:網(wǎng)友

c# lock

之前學(xué)習(xí)多線程的時(shí)候,始終不能明白lock到底有毛線用。直到最近做了一個(gè)項(xiàng)目,里面有很多的線程,但是呢,這些線程都會(huì)用到同一個(gè)datatable,而且會(huì)改變這個(gè)table中的內(nèi)容。當(dāng)時(shí)我就想啊,這幾個(gè)線程都要改這張表。會(huì)不會(huì)遇到同時(shí)在改這個(gè)表里面某一行的情況。后來我機(jī)智的給每個(gè)線程都復(fù)制一張table。心想,這下大家各自改各自的,就可以啦。但是呢,就會(huì)導(dǎo)致每個(gè)線程都要改同樣的數(shù)據(jù)啊,會(huì)非常浪費(fèi)時(shí)間!直到此刻才明白,lock是多么好的朋友,它可以在一個(gè)線程修改表的時(shí)候,其他線程都不能改這張表。很有用的樣子~

lock用法:

//定義共享資源objectobj=newobject();//線程函數(shù)voidthreadFun(){lock(obj){//安全的訪問資源}}volatile 關(guān)鍵字:上面說的datatable,在定義的時(shí)候加上volatile 關(guān)鍵字可以使每個(gè)線程都能得到最新的數(shù)據(jù)。否則一個(gè)線程修改了datatable,其它線程可能還在用沒修改的數(shù)據(jù)。volatileDataTable=newDataTable();
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 通江县| 郁南县| 沈丘县| 南和县| 麦盖提县| 布尔津县| 玛纳斯县| 湘潭市| 姜堰市| 广安市| 屏边| 宁河县| 和硕县| 南召县| 河源市| 桐梓县| 修文县| 儋州市| 塔河县| 桂平市| 寻甸| 静安区| 瑞昌市| 大港区| 维西| 会泽县| 万宁市| 樟树市| 鹤山市| 平远县| 繁昌县| 灵武市| 亳州市| 青浦区| 廊坊市| 维西| 阳城县| 白河县| 乌什县| 新河县| 武乡县|