Monitor Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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.