Idioma

DispatchSource.MemoryPressure Classe

Definição

Fontes deste tipo monitorizam a condição de pressão da memória do sistema para alterações de estado.

public class DispatchSource.MemoryPressure : CoreFoundation.DispatchSource
type DispatchSource.MemoryPressure = class
    inherit DispatchSource
Herança

Observações

A pressão elevada de memória é uma condição a nível de sistema à qual as aplicações registadas nesta fonte devem reagir alterando o seu comportamento de uso futuro de memória, por exemplo, reduzindo o tamanho da cache das operações recém-iniciadas até que a pressão de memória regresse ao normal.

No entanto, as aplicações não devem atravessar e descartar caches existentes para operações passadas quando a pressão de memória do sistema entra num estado elevado, pois isso provavelmente desencadeará operações de VM que agravarão ainda mais a pressão de memória do sistema.

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 ();

Construtores

Nome Descrição
DispatchSource.MemoryPressure(IntPtr, Boolean)

Fontes deste tipo monitorizam a condição de pressão da memória do sistema para alterações de estado.

DispatchSource.MemoryPressure(IntPtr)

Fontes deste tipo monitorizam a condição de pressão da memória do sistema para alterações de estado.

DispatchSource.MemoryPressure(MemoryPressureFlags, DispatchQueue)

Fontes deste tipo monitorizam a condição de pressão da memória do sistema para alterações de estado.

Propriedades

Nome Descrição
Handle

Fontes deste tipo monitorizam a condição de pressão da memória do sistema para alterações de estado.

(Herdado de DisposableObject)
IsCanceled

Determine se a fonte especificada foi cancelada.

(Herdado de DispatchSource)
Owns

Fontes deste tipo monitorizam a condição de pressão da memória do sistema para alterações de estado.

(Herdado de DisposableObject)
PressureFlags

Relata a condição observada.

Métodos

Nome Descrição
Activate()

Fontes deste tipo monitorizam a condição de pressão da memória do sistema para alterações de estado.

(Herdado de DispatchObject)
Cancel()

Cancela assíncronamente a fonte de despacho.

(Herdado de DispatchSource)
ClearHandle()

Fontes deste tipo monitorizam a condição de pressão da memória do sistema para alterações de estado.

(Herdado de DisposableObject)
Dispose()

Liberta todos os recursos utilizados por este objeto.

(Herdado de DisposableObject)
Dispose(Boolean)

Liberta os recursos usados pelo objeto DispatchSource.

(Herdado de DispatchSource)
Equals(Object)

Fontes deste tipo monitorizam a condição de pressão da memória do sistema para alterações de estado.

(Herdado de DisposableObject)
GetCheckedHandle()

Fontes deste tipo monitorizam a condição de pressão da memória do sistema para alterações de estado.

(Herdado de DisposableObject)
GetHashCode()

Fontes deste tipo monitorizam a condição de pressão da memória do sistema para alterações de estado.

(Herdado de DisposableObject)
InitializeHandle(NativeHandle)

Fontes deste tipo monitorizam a condição de pressão da memória do sistema para alterações de estado.

(Herdado de DisposableObject)
Release()

Fontes deste tipo monitorizam a condição de pressão da memória do sistema para alterações de estado.

(Herdado de DispatchObject)
Resume()

Retoma a fonte de despacho.

(Herdado de DispatchSource)
Retain()

Fontes deste tipo monitorizam a condição de pressão da memória do sistema para alterações de estado.

(Herdado de DispatchObject)
SetCancelHandler(Action)

Fornece um handler de cancelamento

(Herdado de DispatchSource)
SetEventHandler(Action)

Especificou um handler para executar quando os eventos são recebidos na fonte de despacho.

(Herdado de DispatchSource)
SetRegistrationHandler(Action)

Fornece um gestor de registo

(Herdado de DispatchSource)
SetTargetQueue(DispatchQueue)

Fontes deste tipo monitorizam a condição de pressão da memória do sistema para alterações de estado.

(Herdado de DispatchObject)
Suspend()

Suspende a fonte do despacho.

(Herdado de DispatchSource)

Métodos da Extensão

Nome Descrição
GetHandle(INativeObject)

Fontes deste tipo monitorizam a condição de pressão da memória do sistema para alterações de estado.

GetNonNullHandle(INativeObject, String)

Fontes deste tipo monitorizam a condição de pressão da memória do sistema para alterações de estado.

Aplica-se a