DispatchSource.MemoryPressure Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
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. |