で凍結を防ぐために、どのように私はこのようなコードを実行することができます。 "Appliction.DoEvents()"は、フォームを正しくリフレッシュし、ユーザーがアクションを実行できるようにします(ボタンのキャンセル、ストロークホットキーなどを押してください)。どのように私はAndroid用のJavaのようなことができますか?は長い操作VB.NETで
2
A
答えて
2
実行中にUIや他のコンポーネントが反応し続けるようにするには、コードをスレッドで実行する必要があります。
スレッドからメソッドを実行する方法の非常に単純明快な例については、このドキュメントを参照してください:
public class MyThread extends Thread {
public void run() {
//do some background work
//put whatever you want your thread to do here
}
}
そして、このようにそれを呼び出す:https://docs.oracle.com/javase/tutorial/essential/concurrency/runthread.html
は、基本的にはThread
クラスを拡張したいです:処理するために、しばらく時間がかかる場合があります長い操作について
new MyThread().start();
2
、これを行うには、いくつかの方法があります:
- service(IntentService - サービスのサブクラスである必要があります)を使用します。サービスがバックグラウンドで長時間の操作を完了すると、いつでも結果を得ることができます。
- AsyncTaskを使用してください - バックグラウンドでも実行されますが、UI要素の準備、データベースやファイルからのデータ読み込みなどの操作を短くすることをお勧めしますが、UIスレッドをフリーズすることはありません。
- Threadサブクラスを作成すると、@ nhouser9の答えに記載されているようにうまく動作するはずです。
目標は、UIスレッドのオーバーワーキングを回避し、ユーザーエクスペリエンスに悪影響を与えることを避けることです。
こちらがお役に立てば幸いです。
関連する問題
- 1. VB.NETの.txtファイルの操作
- 2. vb.netのカレンダーを操作
- 3. VB.netでオーディオファイルを操作する
- 4. Bluetoothで操作するVB.NETクラス
- 5. 長いビットのビット操作エラー
- 6. 長い操作のためのhttpインターフェイス
- 7. アンドロイドアプリアイコンの長押し操作
- 8. Tensorflowでの可変長テキストの操作
- 9. クロススレッド操作が有効ではありませんVB.NET
- 10. HTTPリクエストで長い操作を実行できますか?
- 11. VB.Netレイトバインディングの操作は、私はいくつかのVB.Netレイトバインディングの操作を取得し、このエラーを取得してい式ツリー
- 12. JavaFXアプリケーションで長い操作のカーソルを変更する
- 13. ファイルの操作 - vb.netといくつかの正規表現
- 14. ActivityのonCreate()の長時間操作
- 15. 長期実行操作のシミュレーション
- 16. vb.netで文字列とVbCrLfを操作する
- 17. C#のWinフォームは:非同期で実行時間の長い操作が
- 18. Android PreferenceScreenで長い操作中にチェックボックスを無効にするには
- 19. フォース前に再描画の実行時間の長い操作
- 20. キャメルレストサービスを使用して長い操作をトリガーする
- 21. SMS操作がファイル操作で動作していない
- 22. C#ロックを長時間の操作に使用しないでください。
- 23. 長時間実行する操作を実行するには?
- 24. ハードウェアキーで長押し(ホールド)操作を検出する方法
- 25. AJAXプログレスバーで長時間実行されるPlone操作
- 26. KEYS操作で最大キー長を指定する方法REDIS
- 27. Tensorflow操作で可変長データを生成
- 28. VB.NETの数学操作(科学的表記なし)
- 29. VB.NET - 操作にかかる時間の制限
- 30. VB.net - 高速なテキスト操作/配列への格納