SpinLock.TryEnter Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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.
Aşırı Yüklemeler
| Name | Description |
|---|---|
| TryEnter(Boolean) |
Yöntemi çağrısında |
| TryEnter(Int32, Boolean) |
Yöntemi çağrısında |
| TryEnter(TimeSpan, Boolean) |
Yöntemi çağrısında |
TryEnter(Boolean)
- Kaynak:
- SpinLock.cs
- Kaynak:
- SpinLock.cs
- 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.
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
Bağımsız değişken, lockTaken TryEnter çağrılmadan önce 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 Enter, TryEnter kilidin kullanılabilir olmasını beklemeyi engellemez. TryEnter çağrıldığında kilit kullanılamıyorsa, daha fazla dönmeden hemen döner.
Ayrıca bkz.
- SpinLock
- Nasıl yapılır: Low-Level Eşitleme için SpinLock Kullanma
- Nasıl yapılır: SpinLock'ta Thread-Tracking Modunu Etkinleştirme
Şunlara uygulanır
TryEnter(Int32, Boolean)
- Kaynak:
- SpinLock.cs
- Kaynak:
- SpinLock.cs
- 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.
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 beklemek için.
- 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 bir negatif sayıdır ve bu da sonsuz zaman aşımını temsil eder.
Bağımsız değişken, lockTaken TryEnter çağrılmadan önce 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.
- SpinLock
- Nasıl yapılır: Low-Level Eşitleme için SpinLock Kullanma
- Nasıl yapılır: SpinLock'ta Thread-Tracking Modunu Etkinleştirme
Şunlara uygulanır
TryEnter(TimeSpan, Boolean)
- Kaynak:
- SpinLock.cs
- Kaynak:
- SpinLock.cs
- 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.
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 sayı, sonsuz bir zaman aşımı -veya- zaman aşımının Int32.MaxValue milisaniyeden büyük olduğunu gösterir.
Bağımsız değişken, lockTaken TryEnter çağrılmadan önce 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.
- SpinLock
- Nasıl yapılır: Low-Level Eşitleme için SpinLock Kullanma
- Nasıl yapılır: SpinLock'ta Thread-Tracking Modunu Etkinleştirme