Lock.TryEnter 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
| 名稱 | Description |
|---|---|
| TryEnter() |
嘗試不等就進入鎖。 |
| TryEnter(Int32) |
嘗試進入鎖,必要時等待指定的毫秒數,直到能進入鎖。 |
| TryEnter(TimeSpan) |
嘗試進入鎖,必要時等待鎖被進入或指定的超時結束。 |
TryEnter()
- 來源:
- Lock.cs
- 來源:
- Lock.cs
- 來源:
- Lock.cs
嘗試不等就進入鎖。
public:
bool TryEnter();
public bool TryEnter();
member this.TryEnter : unit -> bool
Public Function TryEnter () As Boolean
傳回
true如果鎖是由當前執行緒輸入的;否則,。 false
例外狀況
目前執行緒的重複條目已達到極限。 這個限制是由實作單位定義的,且設計上足夠高,以致於在正常情況下無法達到。
備註
當方法返回 true時,目前執行緒是唯一持有鎖的執行緒。 如果無法立即輸入鎖,該方法會自動回傳 false ,無需等待鎖定。 如果鎖已被當前執行緒持有,則會重新輸入鎖。 要完全退出鎖並允許其他線程進入鎖,當前線程應與進入鎖的次數相同。
欲了解更多資訊,請參閱備 Lock註。
適用於
TryEnter(Int32)
- 來源:
- Lock.cs
- 來源:
- Lock.cs
- 來源:
- Lock.cs
嘗試進入鎖,必要時等待指定的毫秒數,直到能進入鎖。
public:
bool TryEnter(int millisecondsTimeout);
public bool TryEnter(int millisecondsTimeout);
member this.TryEnter : int -> bool
Public Function TryEnter (millisecondsTimeout As Integer) As Boolean
參數
- millisecondsTimeout
- Int32
等待鎖被輸入所需的毫秒數。 指定 Timeout.Infinite (-1) 以無限等待,或 0 不等待。
傳回
true如果鎖是由當前執行緒輸入的;否則,。 false
例外狀況
millisecondsTimeout 小於 -1。
目前執行緒的重複條目已達到極限。 這個限制是由實作單位定義的,且設計上足夠高,以致於在正常情況下無法達到。
備註
當方法返回 true時,目前執行緒是唯一持有鎖的執行緒。 若無法立即輸入鎖,方法會等待鎖定可輸入或參數指定的 millisecondsTimeout 逾時結束。 若逾時在進入鎖前就已過期,該方法會返回 false。 如果鎖已被當前執行緒持有,則會重新輸入鎖。 要完全退出鎖並允許其他線程進入鎖,當前線程應與進入鎖的次數相同。
欲了解更多資訊,請參閱備 Lock註。
適用於
TryEnter(TimeSpan)
- 來源:
- Lock.cs
- 來源:
- Lock.cs
- 來源:
- Lock.cs
嘗試進入鎖,必要時等待鎖被進入或指定的超時結束。
public:
bool TryEnter(TimeSpan timeout);
public bool TryEnter(TimeSpan timeout);
member this.TryEnter : TimeSpan -> bool
Public Function TryEnter (timeout As TimeSpan) As Boolean
參數
- timeout
- TimeSpan
A TimeSpan 代表等待鎖進入的毫秒數。 指定一個代表 Timeout.Infinite (-1) 毫秒的值,表示無限等待,或一個代表 0 毫秒不等待的值。
傳回
true如果鎖是由當前執行緒輸入的;否則,。 false
例外狀況
timeout,轉換成整數毫秒值後,代表小於毫秒或大於 Int32.MaxValue 毫秒的值-1。
目前執行緒的重複條目已達到極限。 這個限制是由實作單位定義的,且設計上足夠高,以致於在正常情況下無法達到。
備註
當方法返回 true時,目前執行緒是唯一持有鎖的執行緒。 如果無法立即進入鎖,方法會等待鎖被輸入或指定的鎖 timeout 到期。 若逾時在進入鎖前就已過期,該方法會返回 false。 如果鎖已被當前執行緒持有,則會重新輸入鎖。 要完全退出鎖並允許其他線程進入鎖,當前線程應與進入鎖的次數相同。
欲了解更多資訊,請參閱備 Lock註。