Métodos assíncronos
Alguns métodos da API são assíncronos, o que significa que a operação que eles executam pode não estar concluída quando o método retornar. Os métodos assíncronos retornam um identificador que você pode consultar para ver o status da operação; as informações de status para algumas operações podem incluir uma porcentagem de conclusão.
Ao consultar uma operação assíncrona, o resultado pode ser de um dos seguintes tipos:
-
`DriveAdd`O sistema está adicionando uma unidade ao cluster.
-
`BulkVolume`O sistema está realizando uma operação de cópia entre volumes, como um backup ou uma restauração.
-
`Clone`O sistema está clonando um volume.
-
`DriveRemoval`O sistema está copiando dados de uma unidade para prepará-la para remoção do cluster.
-
`RtfiPendingNode`O sistema está instalando software compatível em um nó antes de adicioná-lo ao cluster.
Ao usar métodos assíncronos ou obter o status de uma operação assíncrona em execução, observe os seguintes pontos:
-
Os métodos assíncronos são indicados na documentação de cada método.
-
Os métodos assíncronos retornam um “asyncHandle”, que é um identificador conhecido pelo método da API que o emitiu. Você pode usar o identificador para consultar o status ou o resultado da operação assíncrona.
-
Você pode obter o resultado de métodos assíncronos individuais com o método GetAsyncResult. Ao usar GetAsyncResult para consultar uma operação concluída, o sistema retorna o resultado e o remove automaticamente do sistema. Ao usar GetAsyncResult para consultar uma operação incompleta, o sistema retorna o resultado, mas não o descarta.
-
Você pode obter o status e os resultados de todos os métodos assíncronos em execução ou concluídos usando o método ListAsyncResults. Neste caso, o sistema não elimina os resultados das operações concluídas.