PRJ_CANCEL_COMMAND_CB função de retorno de chamada (projectedfslib.h)

Notifica o provedor de que uma operação por uma invocação anterior de um retorno de chamada deve ser cancelada.

Sintaxe

PRJ_CANCEL_COMMAND_CB PrjCancelCommandCb;

void PrjCancelCommandCb(
  [in] const PRJ_CALLBACK_DATA *callbackData
)
{...}

Parâmetros

[in] callbackData

Informações sobre a operação. Os seguintes membros callbackData são necessários para implementar esse retorno de chamada:

Commandid Identifica a operação a ser cancelada.

Valor retornado

Nenhum

Comentários

Cada invocação de um retorno de chamada do provedor tem um parâmetro callbackData com um campo CommandId . Se um provedor fornecer uma implementação desse retorno de chamada, ele deverá acompanhar os valores CommandId de retornos de chamada que ele processa de forma assíncrona, ou seja, retornos de chamada dos quais ele retornou HRESULT_FROM_WIN32(ERROR_IO_PENDING), mas ainda não concluído chamando PrjCompleteCommand. Se o provedor receber esse retorno de chamada, ele indicará que a E/S que fez com que o retorno de chamada anterior fosse invocado foi cancelada, explicitamente ou porque o thread em que ele foi emitido foi encerrado. O provedor deve cancelar o processamento da invocação de retorno de chamada identificada por CommandId assim que possível.

Chamar PrjCompleteCommand para o CommandId no callbackData desse retorno de chamada não é um erro, no entanto, é uma operação não operacional porque a E/S que causou a invocação de retorno de chamada identificada por CommandId já terminou.

O ProjFS invocará PRJ_CANCEL_COMMAND_CB para um determinado CommandId somente depois que o retorno de chamada a ser cancelado for invocado. No entanto, se o provedor estiver configurado para permitir mais de um thread de trabalho em execução simultânea, o cancelamento e a invocação original poderão ser executados simultaneamente. O provedor deve ser capaz de lidar com essa situação.

Esse retorno de chamada é opcional. Se o provedor não fornecer uma implementação desse retorno de chamada, nenhum dos outros retornos de chamada será cancelável. O provedor processará todos os retornos de chamada de forma síncrona.

Requisitos

   
Cliente mínimo com suporte Windows 10, versão 1809 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho projectedfslib.h