Monitor.PulseAll(Object) 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.
Nesnenin durumundaki bir değişikliği tüm bekleyen iş parçacıklarına bildirir.
public:
static void PulseAll(System::Object ^ obj);
public static void PulseAll(object obj);
static member PulseAll : obj -> unit
Public Shared Sub PulseAll (obj As Object)
Parametreler
- obj
- Object
Nabzı gönderen nesne.
Özel durumlar
obj parametresi null'dir.
Çağıran iş parçacığı belirtilen nesnenin kilidine sahip değil.
Açıklamalar
Şu anda belirtilen nesnedeki kilidin sahibi olan iş parçacığı, nesnedeki kilidi almak için bekleyen tüm iş parçacıklarına sinyal vermek için bu yöntemi çağırır. Sinyal gönderildikten sonra bekleyen iş parçacıkları hazır kuyruğa taşınır. Çağıran PulseAll iş parçacığı kilidi serbest bıraktığında, hazır kuyruktaki bir sonraki iş parçacığı kilidi alır.
Eşitlenmiş bir nesnenin, kilit tutan iş parçacığına başvuru, kilidi almaya hazır iş parçacıklarını içeren hazır kuyruğa başvuru ve nesnenin durumunda bir değişiklik bildirimi bekleyen iş parçacıklarını içeren bekleme kuyruğu başvurusu gibi çeşitli başvuruları içerdiğini unutmayın.
Pulse, PulseAllve Wait yöntemleri eşitlenmiş bir kod bloğu içinden çağrılmalıdır.
Pulse yöntemi için yapılan açıklamalar, eğer bekleyen bir iş parçacığı yokken Pulse çağrılırsa ne olacağını açıklar.
Tek bir iş parçacığına sinyal vermek için yöntemini kullanın Pulse .