問題タブ [ui-thread]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Service クラスで AsyncTask を使用することは可能ですか?
すべてはタイトルにあります。
公式ドキュメントにはNote that services, like other application objects, run in the main thread of their hosting process
、AsyncTask は UIThread で実行された場合にのみ機能すると記載されています。
Service クラスで AsyncTask を使用することは可能ですか?
私はそうしようとしていますが、常に同じエラーが発生します
...
私は何か間違ったことをしていますか、それともこれは単に不可能ですか?
これが私のサービスクラスのコードです
android - onTouch()、onClick()は同じスレッドで順番に実行されていますか?
、、は同じUIスレッドで順番に実行されていますonTouch()
かonClick()
?runOnUiThread()
それとも、それらの間の同期の問題について心配する必要がありますか?
android - Android: UI スレッドが操作を終了するまでバックグラウンド スレッドがブロックされる可能性はありますか?
バックグラウンド スレッドがメッセージをメイン UI スレッドのハンドラーのキューに入れ、そのメッセージが処理されるまでブロックすることは可能ですか?
このコンテキストは、リモート サービスが、IPC 要求を受信したスレッドプール スレッドではなく、メインの UI スレッドから発行された各操作を処理するようにしたいということです。
java - AsyncTask が onPreExecute を表示しない
私は 2 つの AsyncTask アクティビティを持っています。その唯一の責任は、UI スレッドで AsyncTask を実行することです。それらの 1 つはうまく機能し、progressBar を表示し、ProgressBar メッセージを更新します。これは、実際には検索アクティビティを宣言するための Google 検索メタデータを使用した検索アクティビティである、私の SearchActivity 用です。AsyncTask のクローンを作成し、doInBackground コードのみを変更し、SearchActivity のクローンを作成して、browseActivity と呼びました。
項目がクリックされたときに listView を拡張するクラスで結果を得るために、BrowseActivity を開始します。私が意図したのは、AsyncTask の onPreExecute コードが SearchActivity と同じように、ListView アクティビティと、ListView が onActivityResult を開始する ResultActivity の間に、progressBar を表示することでした。onPreExcute コードが呼び出されていますが、ProgressBar は表示されません。(UIスレッドで正しく実行したと思いましたか?)
ブラウズ アクティビティは次のとおりです。
以下は、browseActivity が開始される CategoryActivity (ListActivity を拡張) アクティビティです。
java - PostExecute で AsyncTask が実行されていない
私が持っている唯一の AsyncTask が適切に機能しているのは、検索の進行状況ダイアログを処理するものです。doInBackground() が完了しているにもかかわらず、他の AsyncTasks が onPostExecute() に到達していません! 以前のコミットで機能していたので比較してみましたが、違いはありません! 多くの AsyncTasks は正しく更新して postExecute を呼び出していましたが、今では更新が非常に遅く、数回しか行われず、onPostExecute が実行されることはありません!
c# - c# プログレスバーが更新されない
ファイル I/O の進行状況を報告するために使用するプログレスバーとキャンセル ボタンがある ProgressBarWindow があります。ただし、バックグラウンドワーカーですべての作業が行われているにもかかわらず、ProgressBarWindow の UI スレッドとメイン ウィンドウの両方がハングします。プログレスバーは、メイン ウィンドウと同様にレンダリングされますが、バックグラウンド ワーカーが作業を行っている間は更新されません。次のコードは、メイン ウィンドウのコンストラクターの最後で呼び出されます。
EventCountLogLinesProgressChanged() は次のようになります。
これは ProgressBarWindow の短縮版です (残りはセッターの数だけです):
値セッター行をdispatcher.invokeデリゲートでラップしようとしましたが、スタックオーバーフローが発生します(backgroundworkerがUI ThreadでProgressChangedを呼び出すので、dispatcher.invoke行を持つ必要はありませんよね?)。私はmsdnとgoogledをチェックしましたが、この問題を抱えている人を他に見つけることができないようです.
編集申し訳ありませんが、単純化したコードが UI スレッドをブロックしていることに気付きませんでした。バックグラウンドワーカーを使用しているにもかかわらず、まったく同じ動作が得られるため、それらが同等であると誤って想定しました。バックグラウンドワーカーを使用していたことに言及する必要がありました:P
android - Android UiThread (UI スレッド) とは
誰かがUIスレッドが正確に何であるかを説明できますか? developer.android.com では、 runOnUiThread 関数について述べています
public final void runOnUiThread (実行可能なアクション)
導入されたバージョン: API レベル 1 UI スレッドで指定されたアクションを実行します。現在のスレッドが UI スレッドの場合、アクションはすぐに実行されます。現在のスレッドが UI スレッドでない場合、アクションは UI スレッドのイベント キューにポストされます。
UIスレッドは、着信コールや画面の調光などのUIアクティビティによってアクティビティがバックグラウンドにプッシュされるたびにこれが実行されることを意味しますか? そうでない場合、UI スレッドには正確に何が含まれていますか?
ありがとうございました
.net - GUIスレッドで例外をキャッチするにはどうすればよいですか?
ピクチャーボックスに基づくユーザーコントロールで例外がスローされ、一般的なエラー画像(赤いX)が表示されます。GUIスレッドが例外自体をキャッチして処理したため、例外が発生した場所を簡単に見つけてデバッグすることはできません。
現在、OnPaintコード全体をtry-catchでラップしており、コードをデバッグできましたが、非常に面倒であることがわかったため、GUIスレッドの例外からデバッガーに侵入する方法があるかどうか疑問に思いました。
multithreading - .NET独自の専用UIスレッドでのWPFコントロールの更新
ListViewコントロールの形式でUIログ(RichTextBoxコントロール)を絶えず更新するリアルタイムアプリケーションがあります。コントロールは、イベントを介して受信した現在のアプリケーションデータで更新されます。アプリケーションの実行速度が非常に遅く、ListViewログが更新されてUIスレッドがブロックされたことが原因であることがわかりました。ご想像のとおり、アプリケーションはユーザーに対して非常に反応が鈍いように見えます。
専用のUIスレッドでWPFウィンドウを起動できることは知っています。メインのUIスレッドがブロックされることなくウィンドウの残りの部分を更新できるように、独自のUIスレッドでWPFコントロールをホストできるかどうか疑問に思っていました。
これが不可能な場合は、このジレンマを改善するための代替案を推奨してください。
ありがとう!
android - Android MapActivity スレッドの質問
Android MapActivity プロジェクトの UI スレッドでコードが実行されるかどうかを確認するにはどうすればよいですか?
私は Android マップ ベースのアプリケーションを開発していますが、安定性の問題がいくつか発生しており、調査の結果、UI スレッドで画面の更新を確実に実行する必要があると確信しました。
私のアプリには、GPS リスナー (別のスレッドとして構成したい) と UDP リスナー (既に別のスレッド) からのデータがあり、通常の Android ソフトウェア ライフサイクル メソッドのセットがありますが、地図オーバーレイを更新するコードをどこに配置すればよいかわからないため、経験の浅いか何かに違いありません
(a) UI スレッドで、(b) 繰り返しの方法で。
ポーリングとイベント ドリブン プロセス (おそらくタイマー ベース、または着信データの到着) のどちらを好むかはわかりません。そのため、どちらのタイプの提案も喜んで受け入れられます。
誰にもアイデアはありますか??
ありがとう、R.