AsyncCrossProcessMutex Sınıf
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.
Zaman uyumsuz olarak girilebilen bir mutex.
public class AsyncCrossProcessMutex : IDisposable
type AsyncCrossProcessMutex = class
interface IDisposable
Public Class AsyncCrossProcessMutex
Implements IDisposable
- Devralma
-
AsyncCrossProcessMutex
- Uygulamalar
Örnekler
using AsyncCrossProcessMutex mutex = new("Some-Unique Name"); using (await mutex. EnterAsync()) { // Aynı adlı mutex tarafından korunan başka bir iş parçacığı veya işlemle paralel olarak yürütülmemesi gereken kod. }
Açıklamalar
Bu sınıf, temel olarak iş parçacığı affinitized olan ve mutex'e sahip olacak iş parçacığının zaman uyumlu bir şekilde engellenmesini gerektiren işletim sistemi mutex eşitleme temel öğesini kullanır. Bu, yerel bir mutex'i zaman uyumsuz yöntemlerde kullanmak için uygun hale getirir; burada mutex'e giren iş parçacığı, bu işlemden çıkan iş parçacığıyla aynı olmayabilir. Bu sınıf, mutex'e girmek ve serbest bırakmak için özel bir ayrılmış iş parçacığı kullanarak bu sorunu çözer, ancak aksi takdirde sahibinin zaman uyumsuz kod yürütmesine, iş parçacıklarını değiştirmesine izin verir.
Oluşturucular
| Name | Description |
|---|---|
| AsyncCrossProcessMutex(String) |
AsyncCrossProcessMutex sınıfının yeni bir örneğini başlatır. |
Özellikler
| Name | Description |
|---|---|
| Name |
Mutex adını alır. |
Yöntemler
| Name | Description |
|---|---|
| Dispose() |
Temel alınan yerel nesneleri atılır. |
| EnterAsync() |
Mutex'i zaman uyumsuz olarak alır. |
| EnterAsync(TimeSpan) |
Mutex'i zaman uyumsuz olarak alır. |
| TryEnterAsync(TimeSpan) |
Mutex'i zaman uyumsuz olarak alır ve özel durumlar oluşturmadan zaman aşımlarına izin verir. |