Monitor.PulseAll(Object) Metódus

Definíció

Értesíti az objektum állapotában bekövetkező változás minden várakozó szálát.

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)

Paraméterek

obj
Object

Az a tárgy, amely az impulzust küldi.

Kivételek

A obj paraméter a következő null: .

A hívószál nem rendelkezik a megadott objektum zárolásával.

Megjegyzések

A megadott objektumon jelenleg a zárolást birtokló szál meghívja ezt a metódust, hogy jelezze az összes szálat, amely arra vár, hogy megszerezze az objektum zárolását. A jel elküldése után a várakozási szálak átkerülnek a kész üzenetsorba. Amikor a meghívott PulseAll szál feloldja a zárolást, a kész üzenetsor következő szála beolvasja a zárolást.

Vegye figyelembe, hogy a szinkronizált objektumok számos hivatkozást tartalmaznak, beleértve a zárolást jelenleg tároló szálra mutató hivatkozást, a készen álló üzenetsorra mutató hivatkozást, amely tartalmazza a zárolás beszerzésére kész szálakat, valamint a várakozási üzenetsorra mutató hivatkozást, amely tartalmazza azokat a szálakat, amelyek az objektum állapotának változására várnak.

A Pulse, PulseAllés Wait metódusokat szinkronizált kódblokkból kell meghívni.

A Pulse metódus megjegyzései ismertetik, hogy mi történik, ha Pulse meghívják, amikor egyetlen szál sem várakozik.

Egyetlen szál jelzéséhez használja a metódust Pulse .

A következőre érvényes:

Lásd még