程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> c# lock,

c# lock,

編輯:C#入門知識

c# lock,


之前學習多線程的時候,始終不能明白lock到底有毛線用。直到最近做了一個項目,裡面有很多的線程,但是呢,這些線程都會用到同一個datatable,而且會改變這個table中的內容。當時我就想啊,這幾個線程都要改這張表。會不會遇到同時在改這個表裡面某一行的情況。後來我機智的給每個線程都復制一張table。心想,這下大家各自改各自的,就可以啦。但是呢,就會導致每個線程都要改同樣的數據啊,會非常浪費時間!直到此刻才明白,lock是多麼好的朋友,它可以在一個線程修改表的時候,其他線程都不能改這張表。很有用的樣子~

lock用法:

//定義共享資源 object obj=new object();   //線程函數 void threadFun() {    lock(obj)    {       //安全的訪問資源    } }

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved