Monitor.PulseAll(Object) Yöntem

Tanım

Nesnenin durumundaki bir değişikliğin tüm bekleyen iş parçacıklarını 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

Darbeyi gönderen nesne.

Özel durumlar

obj parametresidirnull.

Çağıran iş parçacığı belirtilen nesnenin kilidine sahip değil.

Açıklamalar

Şu anda belirtilen nesnedeki kilidin sahibi olan iş parçacığı, nesne üzerindeki 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 sıradaki bir sonraki iş parçacığı kilidi alır.

Eşitlenmiş bir nesnenin, kilidi tutan iş parçacığına başvuru, kilidi almak için hazır olan iş parçacıklarını içeren hazır kuyruğa başvuru ve nesnenin durumundaki bir değişikliğin bildirilmesi için bekleyen iş parçacıklarını içeren bekleme kuyruğuna başvuru gibi çeşitli başvuruları barındırdığını unutmayın.

Pulse, PulseAllve Wait yöntemleri eşitlenmiş bir kod bloğu içinden çağrılmalıdır.

yöntemine yönelik Pulse açıklamalar, bekleyen bir iş parçacığı olmadığında çağrılırsa Pulse ne olacağını açıklar.

Tek bir iş parçacığına sinyal vermek için yöntemini kullanın Pulse .

Şunlara uygulanır

Ayrıca bkz.