Encerrar uma simulação - AWS SimSpace Tecelão

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Encerrar uma simulação

UseResult<void> DestroyApplication(Application&& app) para encerrar o aplicativo e a simulação.

Outros aplicativos descobrem que a simulação está sendo desligada quandoErrorCode::ShuttingDown recebem chamadas paraBeginUpdateWillBlock() ouBeginUpdate(). Quando um aplicativo recebeErrorCode::ShuttingDown, ele pode ligarResult<void> DestroyApplication(Application&& app) para se encerrar sozinho.

exemplo Exemplo
Result<void> AppDriver::EncounteredAppError(Application&& application) noexcept { const ErrorCode errorCode = WEAVERRUNTIME_EXPECT_ERROR(runAppResult); switch (errorCode) { case ErrorCode::ShuttingDown: { // insert custom shutdown process here. WEAVERRUNTIME_TRY(Api::DestroyApplication(std::move(application))); return Success(); } default: { OnAppError(errorCode); return errorCode; } } }
Importante

Só ligueResult<void> DestroyApplication(Application&& app) depoisApi::Commit(). Destruir um aplicativo durante uma atualização pode causar um comportamento indefinido.

Importante

Você deve ligarDestroyApplication() antes do encerramento do programa para se certificar de que o aplicativo foi encerrado com êxito.

A falha em ligarDestroyApplication() quando o programa for encerrado fará com que o status seja considerado comoFATAL.