バックグラウンド操作を実行するJavaファイルを呼び出します。バックグラウンドで実行中のスレッド(別のJavaファイル内)のため、JSPページに結果を返すことはできません。 returnとsystem.exit(0)は同時に使用できないことが知られています。表示されているJavaファイル内のスレッドを停止して結果を返しますか?バックグラウンドで実行中のスレッドを停止し、結果を返します。
答えて
あなたの質問をより慎重に定式化することで利益を得ることができます。 「スレッドは別のJavaファイルで実行されています」というようなものはありませんので、正確に何を意味するのかははっきりしません。
任意のスレッドを終了するためのJavaでは単純で安全な方法はありません。通常、最も簡単な方法はExecutorServiceを使用してジョブを送信し、後で結果を取得するかジョブの実行をキャンセルするために使用できる返されたFutureオブジェクトを保持することです。また、実行を待つことなくExecutorServiceをシャットダウンすることもできます。明らかに、あなたの仕事はこのような場合にはキャンセルを念頭に置いて書かれなければならないので、望ましくない副作用はありません。
try {...} catch(InterruptedException ex){...}ブロックにスレッドをラップする場合は、Thread.interrupt()メソッド(http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Thread.html#interrupt())を使用できます。これは、割り込みハンドラにスレッドを送ります。そこでは、結果を返す前に必要なものを整理できます。
私はthread.isInterrupted()をチェックしている実行ループのどこかにある必要があり、もしそうならメインプログラムから.interrupt()を呼び出すときに割り込みハンドラのループを抜け出す必要があると思いますスレッドが割り込みハンドラにジャンプすることはありません。これに関するすべての詳細は私が先にリンクしたページにあります。
あなたの意図はあまり明確ではありませんが、Java Future
とScheduledFuture
のインタフェースとそれらを使用するマルチスレッドのクラスを見てみるとよいでしょう。
- 1. 実行中のスレッドを新しいスレッドで停止および置換する
- 2. Java RMI:クライアントマシン上で実行中のスレッドを停止する
- 3. Android - 重い計算をバックグラウンドで実行し、結果をアクティビティに返す
- 4. VB.NETのDebug.Writelineはスレッドの実行を停止しますか?
- 5. pythonスレッド、マルチスレッドコードの実行中に生成された結果を返す方法
- 6. は、実行中のEC2マシンを停止しています
- 7. 実行中のsetInterval関数を一時停止しますか?
- 8. スレッドが完了するまでプログラムの実行を停止します
- 9. SpriteKit:シーンが一時停止中にアクションを実行します。
- 10. 実行中にクエリを停止する
- 11. 実行中のスレッドを停止または破棄する方法
- 12. Node.jsスクリプトは実行中ですが、停止しません!
- 13. python3でスレッドを停止します
- 14. iphone - スレッドが停止していない、なぜプログラムのバックグラウンドで実行されますか?
- 15. Androidスレッドはプロセスの途中でランダムに停止します
- 16. Netbeans実行 - >ビルドを停止しても実行中のJavaプロセスが停止しない
- 17. WebSphereの下でアプリケーションのバックグラウンド・スレッドを停止する方法
- 18. スレッドはどのように内容を実行し、一時停止して繰り返しますか?
- 19. 繰り返し構造での実行を停止します。 VB.NET
- 20. 現在実行中のスレッドを知り、それを停止する方法iOS
- 21. Node.js - 別のスレッドでスクリプトの実行を一時停止する
- 22. Bluetoothで中断しているスレッドを停止する方法
- 23. iPhoneデバイスで実行中のデバッガで停止しない
- 24. 実行中のSKAction - スプライトキットの停止
- 25. 現在のスレッド以外の実行中のスレッドをすべて停止する方法はありますか?
- 26. 別のAsynctaskのonPostExecute内でAsyncTaskを実行し、結果を返します
- 27. 現在実行中のコード行でデバッガを停止する
- 28. sqlクエリを実行し、結果セットをループで返す
- 29. performSelectorの停止:実行中から
- 30. 停止し、再実行スレッド自体の内部