終止模擬 - AWS SimSpace Weaver

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

終止模擬

Result<void> DestroyApplication(Application&& app)於終止應用程式和模擬。

其他應用程式會發現當他們接到BeginUpdateWillBlock()BeginUpdate()ErrorCode::ShuttingDown來電時,模擬正在關閉。當應用程序接收時ErrorCode::ShuttingDown,它可以調Result<void> DestroyApplication(Application&& app)用終止自己。

範例
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; } } }
重要

Result<void> DestroyApplication(Application&& app)之後Api::Commit()才打電話 在更新期間銷毀應用程式可能會導致未定義的行為。

重要

您必須在程式結束DestroyApplication()前呼叫,以確保應用程式報告成功終止。

程序退出DestroyApplication()時未能調用將導致狀態被視為FATAL