Compartilhar via


Interface IRunnableTask (shobjidl_core.h)

Uma interface de thread livre que pode ser exposta por um objeto para permitir que as operações sejam executadas em um thread em segundo plano. Por exemplo, se o método IExtractImage::GetLocation retornar E_PENDING, o aplicativo de chamada terá permissão para extrair a imagem em um thread de plano de fundo.

Herança

A interface IRunnableTask herda da interface IUnknown . IRunnableTask também tem estes tipos de membros:

Métodos

A interface IRunnableTask tem esses métodos.

 
IRunnableTask::IsRunning

Solicita informações sobre o estado de uma tarefa, como extração em miniatura.
IRunnableTask::Kill

Solicita que uma tarefa seja interrompida.
IRunnableTask::Resume

Solicita que uma tarefa seja retomada.
IRunnableTask::Run

Solicita que uma tarefa comece.
IRunnableTask::Suspend

Solicita que uma tarefa seja suspensa.

Comentários

Implemente IRunnableTask se sua extensão de namespace for de thread livre e você quiser permitir que uma tarefa como a extração de ícones seja gerenciada por um agendador. Somente os métodos Run e IsRunning devem ser implementados. Se você não quiser implementar Kill, Resume e Suspend, basta fazê-los retornar E_NOTIMPL.

Se você estiver usando IRunnableTask para extrair uma imagem em um thread em segundo plano, ou seja, se o objeto expor IExtractImage, Executar não será necessário, pois o sistema usará IExtractImage::Extract para gerenciar a tarefa. Os outros métodos (Kill, Resume e Suspend) são opcionais nesse caso, mas serão usados pelo sistema se forem implementados.

Você não chama essa interface diretamente. IRunnableTask é usado pelo sistema operacional somente quando ele confirma que seu aplicativo está ciente dessa interface.

IRunnableTask implementa IUnknown , bem como os cinco métodos listados.

Observeo Windows Vista e versões posteriores. Antes do Windows Vista, essa interface era declarada em Shlobj.h.
 

Requisitos

   
Cliente mínimo com suporte Windows 2000 Professional, Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho shobjidl_core.h (inclua Shobjidl.h)