Język

DispatchSource.MemoryPressure Klasa

Definicja

Źródła tego typu monitorują stan ciśnienia pamięci systemowej pod kątem zmian stanu.

public class DispatchSource.MemoryPressure : CoreFoundation.DispatchSource
type DispatchSource.MemoryPressure = class
    inherit DispatchSource
Dziedziczenie

Uwagi

Zwiększone wykorzystanie pamięci to warunek dla całego systemu, na który aplikacje zarejestrowane dla tego źródła powinny reagować, zmieniając zachowanie użycia pamięci w przyszłości, np. przez zmniejszenie rozmiaru pamięci podręcznej nowo zainicjowanych operacji do momentu powrotu ciśnienia pamięci do normalnego.

Jednak aplikacje nie powinny przechodzić i odrzucać istniejących pamięci podręcznych dla poprzednich operacji, gdy ciśnienie pamięci systemowej wchodzi w stan podwyższonego poziomu, ponieważ prawdopodobnie spowoduje to wyzwolenie operacji maszyny wirtualnej, które jeszcze bardziej pogorszyją wykorzystanie pamięci systemu.

var dispatchSource = new DispatchSource.MemoryPressure (
    MemoryPressureFlags.Critical | MemoryPressureFlags.Warn | MemoryPressureFlags.Normal, 
    DispatchQueue.MainQueue);

dispatchSource.SetRegistrationHandler (() => {
    Console.WriteLine ("Memory monitor registered");
});

dispatchSource.SetEventHandler (() => {
    var pressureLevel = dispatchSource.PressureFlags;
    Console.WriteLine ("Memory worning of level: {0}", pressureLevel);
    dispatchSource.Cancel ();
});

dispatchSource.SetCancelHandler (() => {
    Console.WriteLine ("Memory monitor cancelled");
});

dispatchSource.Resume ();

Konstruktory

Nazwisko Opis
DispatchSource.MemoryPressure(IntPtr, Boolean)

Źródła tego typu monitorują stan ciśnienia pamięci systemowej pod kątem zmian stanu.

DispatchSource.MemoryPressure(IntPtr)

Źródła tego typu monitorują stan ciśnienia pamięci systemowej pod kątem zmian stanu.

DispatchSource.MemoryPressure(MemoryPressureFlags, DispatchQueue)

Źródła tego typu monitorują stan ciśnienia pamięci systemowej pod kątem zmian stanu.

Właściwości

Nazwisko Opis
Handle

Źródła tego typu monitorują stan ciśnienia pamięci systemowej pod kątem zmian stanu.

(Odziedziczone po DisposableObject)
IsCanceled

Ustal, czy określone źródło zostało anulowane.

(Odziedziczone po DispatchSource)
Owns

Źródła tego typu monitorują stan ciśnienia pamięci systemowej pod kątem zmian stanu.

(Odziedziczone po DisposableObject)
PressureFlags

Zgłasza stan zaobserwowany.

Metody

Nazwisko Opis
Activate()

Źródła tego typu monitorują stan ciśnienia pamięci systemowej pod kątem zmian stanu.

(Odziedziczone po DispatchObject)
Cancel()

Asynchronicznie anuluje źródło wysyłania.

(Odziedziczone po DispatchSource)
ClearHandle()

Źródła tego typu monitorują stan ciśnienia pamięci systemowej pod kątem zmian stanu.

(Odziedziczone po DisposableObject)
Dispose()

Zwalnia wszystkie zasoby używane przez ten obiekt.

(Odziedziczone po DisposableObject)
Dispose(Boolean)

Zwalnia zasoby używane przez obiekt DispatchSource.

(Odziedziczone po DispatchSource)
Equals(Object)

Źródła tego typu monitorują stan ciśnienia pamięci systemowej pod kątem zmian stanu.

(Odziedziczone po DisposableObject)
GetCheckedHandle()

Źródła tego typu monitorują stan ciśnienia pamięci systemowej pod kątem zmian stanu.

(Odziedziczone po DisposableObject)
GetHashCode()

Źródła tego typu monitorują stan ciśnienia pamięci systemowej pod kątem zmian stanu.

(Odziedziczone po DisposableObject)
InitializeHandle(NativeHandle)

Źródła tego typu monitorują stan ciśnienia pamięci systemowej pod kątem zmian stanu.

(Odziedziczone po DisposableObject)
Release()

Źródła tego typu monitorują stan ciśnienia pamięci systemowej pod kątem zmian stanu.

(Odziedziczone po DispatchObject)
Resume()

Wznawia źródło wysyłania.

(Odziedziczone po DispatchSource)
Retain()

Źródła tego typu monitorują stan ciśnienia pamięci systemowej pod kątem zmian stanu.

(Odziedziczone po DispatchObject)
SetCancelHandler(Action)

Udostępnia procedurę obsługi anulowania

(Odziedziczone po DispatchSource)
SetEventHandler(Action)

Określono procedurę obsługi do wykonania, gdy zdarzenia są odbierane w źródle wysyłania.

(Odziedziczone po DispatchSource)
SetRegistrationHandler(Action)

Udostępnia procedurę obsługi rejestracji

(Odziedziczone po DispatchSource)
SetTargetQueue(DispatchQueue)

Źródła tego typu monitorują stan ciśnienia pamięci systemowej pod kątem zmian stanu.

(Odziedziczone po DispatchObject)
Suspend()

Zawiesza źródło wysyłania.

(Odziedziczone po DispatchSource)

Metody rozszerzania

Nazwisko Opis
GetHandle(INativeObject)

Źródła tego typu monitorują stan ciśnienia pamięci systemowej pod kątem zmian stanu.

GetNonNullHandle(INativeObject, String)

Źródła tego typu monitorują stan ciśnienia pamięci systemowej pod kątem zmian stanu.

Dotyczy