私はアンドロイドで新しく、私はasynkタスクを主に使っていますが、ハンドラもあります。スレッドとasynkタスクとハンドラの違いを読んだときにハンドラが混乱しますなぜハンドラは1つの違いAsynkタスクはUIスレッドで初期化され、Handlerは任意のものから初期化できます。 Asynkタスクをいつ使用するのか、そうでない場合、なぜ私に状況を教えてください。なぜですか?ハンドラーと同じですか?どこにasynkタスクを使用するのか、そしてハンドラがあればそれが存在するのはなぜですか?
0
A
答えて
0
あなたはハンドラを誤解しています。 Handlers
はcommunicate between two threads
に使用されています。達成するためにAsynctaskを使用するには、handler and thread together
をthread
として使用する必要があります。background processing
を使用し、handler
を使用してupdate UI accordingly
を使用します。この両方の作業はasynctask自体で実行できますが、これは少し問題をクリアすることを願っています。 さらに詳しい説明については、このリンクを参照してください。Handlers and Thread
0
AsyncTask
は、UIスレッド(メインスレッド)を中断することなくバックグラウンドで実行するために使用されます。Handlers
はメインスレッドで実行され、UI更新操作のような目的のためにUIコンポーネントを別のスレッドから伝達するのに適しています高価なプロセスを実行するには、ジョブが完了するまで主スレッドがブロックされます。 私は個人的にメッセージ管理部分としてHandlers
を使用して、アプリケーションイベントを考慮してUIコンポーネントを維持し、Fragment
またはActivity
ライフサイクルに沿ってバックグラウンドでプロセスを実行するためにAsyncTask
を使用します。
関連する問題
- 1. なぜそれが存在する場合であっても
- 2. イベントハンドラはどこに接続されていますか、なぜそれがすべて存在しますか?
- 3. タスクが開始することがありますが、時にはそれはなぜですか?それを変更する方法はありますか?
- 4. Cocoaで+ newを使用していますか?それがなぜ存在するのか?
- 5. それはタグが存在している必要があります存在しますが、それが存在し、非は、これは私のコードである状態を存在になった場合、私は、タグをチェックしてる変数
- 6. 値が存在するかどうかSQLデータベースをチェックし、値があればそれを返します
- 7. 他にクラスファイルが存在する場合、そのオブジェクトファイルにクラスメソッドが存在しないのはなぜですか?
- 8. ファイルが存在し、それが今日からのものであることを確認するにはどうすればよいですか?
- 9. チェックビューが存在するかどうか、フォルダ、それは
- 10. msbuildタスクとは何ですか?また、いつ、そしてなぜあなたはそれらを使用することを選択しますか?
- 11. メソッドがタスクを返すかどうかを判断し、それがあればそれを待つことはできますか?
- 12. ExecutorServiceは、それが存在するメソッドをブロックしますか?
- 13. なぜsize_tがC/C++に存在し、それを置き換えることができますか?
- 14. フラグメントが存在し、コンテナに表示されているかどうかをチェックする方法は?それがあれば削除する方法は?
- 15. NSURLSessionDataTask完了ハンドラは、それが起動されることは決してありませんので、タスクが完了することはありません
- 16. どうすればローカルにデータを保存し、そこからデータが得られるのですか?
- 17. shcore.dll - それは存在しますか?
- 18. 既存のプロセスが存在するかどうかを確認する - それがあればそれと通信する、そうでない場合は新しいものを作成する
- 19. ハンドルバーは値を返さないが、それはに存在する{{}}この
- 20. なぜwhileループを使用してこのアイデア。それは簡単ですか?
- 21. 以下はなぜそれが何をするのですか?
- 22. LLVMそれは何ですか、私はそれをクロスプラットフォームのコンパイルに使用することができます
- 23. オブジェクトがあれば、そのクラスをどのようにしてperlで知ることができますか?
- 24. これはSigillシグナルが途中で存在するのはなぜですか?
- 25. なぜ私はそんなに遅れがありますか?
- 26. Cypherでは、関係が存在しない場合はどうすれば作成できますか?それがあればupdateプロパティ
- 27. ハンドラにアクティブなタスクがあるかどうかを確認するには?
- 28. なぜそれがnullですか?
- 29. ダイナミックプロキシクラスとは何ですか、なぜそれを使用するのですか?
- 30. Cocoaのデリゲートとは何ですか?なぜそれらを使用する必要がありますか?
http://stackoverflow.com/questions/6964011/handler-vs-asynctask-vs-threadと同じです – user3641702