2016-04-28 39 views
0

我想設置一個鎖聲明,我的代碼..ASP - 如何在我的代碼中設置[鎖定語句]?

我已經這樣做了這樣:

設置 - >私有靜態對象thisLock =新的對象(); - >全局爲 變量。

在我的代碼:

lock (thisLock) 
{ 
    myCode HERE... 
} 

我有保存表單按鈕單擊事件。我是否應該使用它不會與ID發生衝突。只有我的代碼,我會做這項工作?我應該在代碼之前還是之後寫另一個?

謝謝你,以前!!!

+1

不,這正是你需要的。 – Christos

+0

我有一個按鈕單擊事件來保存表單。我是否應該使用它不會與ID發生衝突。 – Gohyu

+0

只有我的代碼,我會做的工作? – Gohyu

回答

1

代碼很好。

記住:本關鍵字確保而另一個線程是在臨界段一個線程不進入的代碼的臨界段。如果另一個線程嘗試輸入一個鎖定的代碼,它將等待,阻止,直到該對象被釋放。

這裏一個簡單的例子,從MSDN

class Account 
{ 
    decimal balance; 
    private Object thisLock = new Object(); 

    public void Withdraw(decimal amount) 
    { 
     lock (thisLock) 
     { 
      if (amount > balance) 
      { 
       throw new Exception("Insufficient funds"); 
      } 
      balance -= amount; 
     } 
    } 
} 
+0

是的,我看了這個例子,但我的代碼是不同的:)我有一個**按鈕點擊事件**保存表單。我是否應該使用它不會與ID發生衝突。 – Gohyu

+0

只有我的代碼,我會做的工作? – Gohyu

相關問題