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.
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) |