Aracılığıyla paylaş


SpinLock.TryEnter Yöntem

Tanım

Yöntemi çağrısında lockTaken bir özel durum oluşsa bile kilidin alınıp alınmadığını belirlemek için güvenilir bir şekilde kilidi alma girişimleri güvenilir bir şekilde incelenebilir.

Aşırı Yüklemeler

TryEnter(Boolean)

Yöntemi çağrısında lockTaken bir özel durum oluşsa bile kilidin alınıp alınmadığını belirlemek için güvenilir bir şekilde kilidi alma girişimleri güvenilir bir şekilde incelenebilir.

TryEnter(Int32, Boolean)

Yöntemi çağrısında lockTaken bir özel durum oluşsa bile kilidin alınıp alınmadığını belirlemek için güvenilir bir şekilde kilidi alma girişimleri güvenilir bir şekilde incelenebilir.

TryEnter(TimeSpan, Boolean)

Yöntemi çağrısında lockTaken bir özel durum oluşsa bile kilidin alınıp alınmadığını belirlemek için güvenilir bir şekilde kilidi alma girişimleri güvenilir bir şekilde incelenebilir.

TryEnter(Boolean)

Kaynak:
SpinLock.cs
Kaynak:
SpinLock.cs
Kaynak:
SpinLock.cs

Yöntemi çağrısında lockTaken bir özel durum oluşsa bile kilidin alınıp alınmadığını belirlemek için güvenilir bir şekilde kilidi alma girişimleri güvenilir bir şekilde incelenebilir.

public:
 void TryEnter(bool % lockTaken);
public void TryEnter (ref bool lockTaken);
member this.TryEnter : bool -> unit
Public Sub TryEnter (ByRef lockTaken As Boolean)

Parametreler

lockTaken
Boolean

Kilit alınırsa true; aksi takdirde false. lockTaken bu yöntemi çağırmadan önce false olarak başlatılmalıdır.

Özel durumlar

lockTaken TryEnter çağrılmadan önce bağımsız değişkeni false olarak başlatılmalıdır.

İş parçacığı sahipliğini izleme etkinleştirildi ve geçerli iş parçacığı bu kilidi zaten aldı.

Açıklamalar

'den farklı olarak EnterTryEnter, kilidin kullanılabilir olmasını beklemeyi engellemez. TryEnter çağrıldığında kilit kullanılamıyorsa, daha fazla dönmeden hemen geri döner.

Ayrıca bkz.

Şunlara uygulanır

TryEnter(Int32, Boolean)

Kaynak:
SpinLock.cs
Kaynak:
SpinLock.cs
Kaynak:
SpinLock.cs

Yöntemi çağrısında lockTaken bir özel durum oluşsa bile kilidin alınıp alınmadığını belirlemek için güvenilir bir şekilde kilidi alma girişimleri güvenilir bir şekilde incelenebilir.

public:
 void TryEnter(int millisecondsTimeout, bool % lockTaken);
public void TryEnter (int millisecondsTimeout, ref bool lockTaken);
member this.TryEnter : int * bool -> unit
Public Sub TryEnter (millisecondsTimeout As Integer, ByRef lockTaken As Boolean)

Parametreler

millisecondsTimeout
Int32

Beklenen milisaniye sayısı veya Infinite (-1) süresiz olarak bekleniyor.

lockTaken
Boolean

Kilit alınırsa true; aksi takdirde false. lockTaken bu yöntemi çağırmadan önce false olarak başlatılmalıdır.

Özel durumlar

millisecondsTimeout , -1 dışında, sonsuz bir zaman aşımını temsil eden negatif bir sayıdır.

lockTaken TryEnter çağrılmadan önce bağımsız değişkeni false olarak başlatılmalıdır.

İş parçacığı sahipliğini izleme etkinleştirildi ve geçerli iş parçacığı bu kilidi zaten aldı.

Açıklamalar

'den farklı Enterolarak, TryEnter kilidin kullanılabilir olmasını beklerken süresiz olarak engellemez. Kilit kullanılabilir duruma gelene veya süresi dolana millisecondsTimeout kadar engeller.

Ayrıca bkz.

Şunlara uygulanır

TryEnter(TimeSpan, Boolean)

Kaynak:
SpinLock.cs
Kaynak:
SpinLock.cs
Kaynak:
SpinLock.cs

Yöntemi çağrısında lockTaken bir özel durum oluşsa bile kilidin alınıp alınmadığını belirlemek için güvenilir bir şekilde kilidi alma girişimleri güvenilir bir şekilde incelenebilir.

public:
 void TryEnter(TimeSpan timeout, bool % lockTaken);
public void TryEnter (TimeSpan timeout, ref bool lockTaken);
member this.TryEnter : TimeSpan * bool -> unit
Public Sub TryEnter (timeout As TimeSpan, ByRef lockTaken As Boolean)

Parametreler

timeout
TimeSpan

TimeSpan Bekleyebilecek milisaniye sayısını temsil eden veya süresiz olarak bekleyebilecek -1 milisaniyeyi temsil eden birTimeSpan.

lockTaken
Boolean

Kilit alınırsa true; aksi takdirde false. lockTaken bu yöntemi çağırmadan önce false olarak başlatılmalıdır.

Özel durumlar

timeout , -1 milisaniye dışında bir negatif sayıdır. Bu, sonsuz bir zaman aşımı -veya- zaman aşımının Int32.MaxValue milisaniyeden büyük olduğunu gösterir.

lockTaken TryEnter çağrılmadan önce bağımsız değişkeni false olarak başlatılmalıdır.

İş parçacığı sahipliğini izleme etkinleştirildi ve geçerli iş parçacığı bu kilidi zaten aldı.

Açıklamalar

'den farklı Enterolarak, TryEnter kilidin kullanılabilir olmasını beklerken süresiz olarak engellemez. Kilit kullanılabilir duruma gelene veya süresi dolana timeout kadar engeller.

Ayrıca bkz.

Şunlara uygulanır