Compartir a través de


BackgroundTaskDeferral.Complete Método

Definición

Informa al sistema de que ha finalizado una operación asincrónica asociada a una tarea en segundo plano.

public:
 virtual void Complete() = Complete;
void Complete();
public void Complete();
function complete()
Public Sub Complete ()

Comentarios

Si una tarea en segundo plano usa una operación asincrónica, es posible que el método Run devuelva antes de que la tarea en segundo plano haya completado su trabajo. En cuanto se devuelve el método Run , el sistema podría suspender o finalizar el proceso de host de la tarea en segundo plano, lo que podría impedir la finalización de operaciones asincrónicas iniciadas por la tarea en segundo plano.

Para evitar que el proceso de host se suspenda o finalice mientras se ejecuta la tarea en segundo plano, use el método GetDeferral para obtener un aplazamiento de tareas en segundo plano para cada operación asincrónica iniciada. Después, cuando finalice la operación asincrónica, llame al método BackgroundTaskDeferral.Complete.

Asegúrese de completar todos los aplazamientos de tareas en segundo plano. La mayoría de las tareas en segundo plano tienen un tiempo de espera después del cual la aplicación se suspenderá o finalizará independientemente de si hay aplazamientos pendientes. Sin embargo, dejar aplazamientos pendientes de tareas en segundo plano interfiere con la capacidad del sistema de administrar la duración del proceso de forma oportuna.

Se aplica a