Udostępnij za pośrednictwem


Monitor Klasa

Definicja

Zapewnia mechanizm, który synchronizuje dostęp do obiektów.

public ref class Monitor abstract sealed
public ref class Monitor sealed
public static class Monitor
public sealed class Monitor
[System.Runtime.InteropServices.ComVisible(true)]
public static class Monitor
type Monitor = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type Monitor = class
Public Class Monitor
Public NotInheritable Class Monitor
Dziedziczenie
Monitor
Atrybuty

Uwagi

Aby uzyskać więcej informacji na temat tego interfejsu API, zobacz dodatkowe uwagi dotyczące interfejsu API dla monitora.

Właściwości

LockContentionCount

Pobiera liczbę przypadków rywalizacji podczas próby zablokowania monitora.

Metody

Enter(Object)

Uzyskuje blokadę wyłączną dla określonego obiektu.

Enter(Object, Boolean)

Uzyskuje blokadę wyłączną dla określonego obiektu i niepodziewanie ustawia wartość, która wskazuje, czy blokada została podjęta.

Exit(Object)

Zwalnia blokadę wyłączną dla określonego obiektu.

IsEntered(Object)

Określa, czy bieżący wątek przechowuje blokadę określonego obiektu.

Pulse(Object)

Powiadamia wątek w kolejce oczekiwania o zmianie stanu zablokowanego obiektu.

PulseAll(Object)

Powiadamia wszystkie wątki oczekujące o zmianie stanu obiektu.

TryEnter(Object)

Próbuje uzyskać blokadę wyłączną dla określonego obiektu.

TryEnter(Object, Boolean)

Próbuje uzyskać blokadę wyłączną na określonym obiekcie i niepodziewanie ustawia wartość, która wskazuje, czy blokada została podjęta.

TryEnter(Object, Int32)

Próbuje uzyskać wyłączną blokadę określonego obiektu dla określonej liczby milisekund.

TryEnter(Object, Int32, Boolean)

Próby uzyskania wyłącznej blokady dla określonej liczby milisekund na określonym obiekcie i niepodzielne ustawiają wartość wskazującą, czy blokada została podjęta.

TryEnter(Object, TimeSpan)

Próbuje uzyskać wyłączną blokadę określonego obiektu przez określony czas.

TryEnter(Object, TimeSpan, Boolean)

Próby uzyskania wyłącznej blokady określonego obiektu przez określony czas i niepodzielne ustawiają wartość wskazującą, czy blokada została podjęta.

Wait(Object)

Zwalnia blokadę obiektu i blokuje bieżący wątek, dopóki nie odzyska blokady.

Wait(Object, Int32)

Zwalnia blokadę obiektu i blokuje bieżący wątek, dopóki nie odzyska blokady. Jeśli określony interwał limitu czasu upłynie, wątek wchodzi do gotowej kolejki.

Wait(Object, Int32, Boolean)

Zwalnia blokadę obiektu i blokuje bieżący wątek, dopóki nie odzyska blokady. Jeśli określony interwał limitu czasu upłynie, wątek wchodzi do gotowej kolejki. Ta metoda określa również, czy domena synchronizacji dla kontekstu (jeśli w zsynchronizowanym kontekście) jest zamykana przed oczekiwaniem i ponownie następnie.

Wait(Object, TimeSpan)

Zwalnia blokadę obiektu i blokuje bieżący wątek, dopóki nie odzyska blokady. Jeśli określony interwał limitu czasu upłynie, wątek wchodzi do gotowej kolejki.

Wait(Object, TimeSpan, Boolean)

Zwalnia blokadę obiektu i blokuje bieżący wątek, dopóki nie odzyska blokady. Jeśli określony interwał limitu czasu upłynie, wątek wchodzi do gotowej kolejki. Opcjonalnie zamyka domenę synchronizacji dla zsynchronizowanych kontekstów przed oczekiwaniem i ponownie wyszukuje domenę później.

Dotyczy

Bezpieczeństwo wątkowe

Ten typ jest bezpieczny wątkowo.

Zobacz też