問題タブ [java-threads]
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.
java - データのポーリング中にグラフ作成 GUI がフリーズしてロードされない
偶然見つけた「LiveGraph」というライブラリを使用して、ライブグラフアプリケーションを作成しています。基本的に、LiveGraph アプリケーションは、テキスト ファイルからデータを読み取り続け、対応するグラフを更新する GUI です。
これが私が持っているコードのスニペットです(以下の説明:
最初の for ループは基本的に、グラフのリストを調べて、グラフごとに GUI をロードします。その後のwhileループは、基本的に、ネットワークを介してデータを永久にポーリングし続けます。
シナリオは次のとおりです。グラフのみを表示している場合 (つまり、while ループをコメント アウトした場合)、グラフが表示されて開きます (ただし、何もポーリングしていないため、明らかに何も表示されません)。ただし、以下に示すすべてのコードを使用すると、グラフの GUI ウィンドウが開きますが、完全に灰色になり、コンテンツがありません。サイズを変更したり、なんらかの方法で操作しようとすると、アプリケーションがフリーズし、強制終了する必要があります。
ここでは、スレッド化がどういうわけか問題であるという問題にこれを絞り込みました。while ループは永久に実行され続け、そのために GUI が適切に実行されない可能性があります。これに対する解決策を探しています。おそらくスレッド化が必要です。ディスプレイを実行し、それぞれを個別のスレッドとしてポーリングするなど、いくつかの基本的なことを試しましたが、どこにも行きませんでした。
android - クラッシュせずにスレッド onBackPressed を中断する方法は?
onBackPressed をオーバーライドして、現在のアクティビティを終了するだけでなく、次のアクティビティへのインテントを呼び出しているときにスレッドを中断しようとしました。前に押し返したら、スプラッシュ アクティビティは終了しましたが、スレッドは実行され続け、インテントを次のアクティビティに呼び出しました。スレッドの中断 onBackPressed を含めたので、戻るボタンを押すとアプリがクラッシュします。私は何を間違っていますか?
更新: (このソリューションは私にとってはうまくいきました)。
android - IllegalThreadStateException: スレッドは既に新しいスレッドで開始されています
私は HockeyApp を使用して、内部テスターからのクラッシュの問題をキャッチしました。このトレースを含む単一のクラッシュ レポートが届きました。
SO を見た後、スレッドが終了した後にコードが onStart() を呼び出していることが問題のようです。ただし、私のサービスで onStart() を呼び出す唯一のコードは以下のとおりです。新しいスレッドが作成された後に開始されることに注意してください。これは一度しか発生していないため、再現手順についてはわかりませんが、何が原因であるかを他の誰かが知っているかどうか知りたいです.
256 ~ 260 行目 (258 行目でクラッシュ)
java - OCJP ダンプ スレッド
誰でも次の問題を解決するのを手伝ってもらえますか?
A.4
B.5
C.8
D.9
E. コンパイルの失敗
F. 実行時に例外がスローされる
G.確実に判断することは不可能です
ダンプでは、答えは D です。new Starter().makeItSo で新しいスレッドが作成されることはわかっています。しかし、run() の x*=2 がメソッド makeItSo の x=x-1 と System.out.println(x) の間で実行される理由を誰か教えてもらえますか?
java - 単純なピンポン Java スレッド
2 つのスレッドを 1 つの Ping と 1 つの Pong にしようとしています。Ping は常に最初に実行する必要があるという考えです。同期メソッドを使用しています。ここで私のコードの何が問題なのかわかりません。それはうまくいくはずです。私は多くのドキュメントを読みました。ですので、参考になれば幸いです。シンプルなものだとおもいます。どんな助けでも大歓迎です
それぞれの結果は異なりますが、奇妙なことに、繰り返しが発生します。