Compartilhar via


BackgroundTaskDeferral.Complete Método

Definição

Informa ao sistema que uma operação assíncrona associada a uma tarefa em segundo plano foi concluída.

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

Comentários

Se uma tarefa em segundo plano usa uma operação assíncrona, é possível que o método Run retorne antes que a tarefa em segundo plano conclua seu trabalho. Assim que o método Run retornar, o sistema poderá suspender ou encerrar o processo de host da tarefa em segundo plano, o que poderia impedir a conclusão de operações assíncronas iniciadas pela tarefa em segundo plano.

Para impedir que o processo de host seja suspenso ou encerrado enquanto a tarefa em segundo plano estiver em execução, use o método GetDeferral para obter um adiamento de tarefa em segundo plano para cada operação assíncrona iniciada. Em seguida, quando a operação assíncrona for concluída, chame o método BackgroundTaskDeferral.Complete.

Verifique se você concluiu todos os adiamentos da tarefa em segundo plano. A maioria das tarefas em segundo plano tem um tempo limite após o qual o aplicativo será suspenso ou encerrado, independentemente de haver algum adiamento pendente. No entanto, deixar os adiamentos de tarefas em segundo plano pendentes interfere na capacidade do sistema de gerenciar tempos de vida do processo em tempo hábilidade.

Aplica-se a