バックグラウンドスレッドが完了するまで、スプラッシュ画面の可視性を確保する
この記事では、バックグラウンドスレッドが処理が終了するまで表示されたままのスプラッシュ画面を作成する方法について詳しく説明しています。 別のSplashScreen
クラスに存在するスプラッシュ画面は、メイン申請書の前に表示されます。
クラスには、サーバーデータの取得と処理をシミュレートするメソッドSplashScreen
が組み込まれています。この方法は別のスレッドで実行され、メインスレッドがスプラッシュ画面を同時に表示できるようにします。 同期は、スプラッシュ画面が早期に閉じるのを防ぐために重要です。GetFromServer
この同期を達成するために、a
ManualResetEvent
<code class="language-csharp">private ManualResetEvent _threadFinished = new ManualResetEvent(false); private void GetFromServer() { // ... (Existing GetFromServer method code) ... // Signal thread completion _threadFinished.Set(); }</code>
最後に、SplashScreen
を使用して、スプラッシュ画面が優雅に閉じるまでメインスレッドをブロックします。
<code class="language-csharp">private void DisplaySplash() { // ... (Existing DisplaySplash method code) ... // Wait for thread completion _threadFinished.WaitOne(); // ... (Code to hide the splash screen) ... }</code>
以上がスプラッシュ スクリーンを閉じる前にバックグラウンド スレッドの終了を待つにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。