問題タブ [completion-service]
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 - Future get with timeout と CompletionService poll with timeout のパフォーマンスの違い
時間がかかりすぎる場合に結果またはタイムアウトを取得したい、長時間実行される操作があるとします。
比較したい 2 つの異なるバージョンがあります。
1) 呼び出すpoll
と、アイテムが内部ブロッキング キューに入れられたかどうかを確認します。
2)呼び出すと、待機get
する実装がありますFutureTask
基本的に両方のバージョンで、future が実行を完了するのを待っていますが、内部実装は異なります。性能面で何か違いはありますか?https://stackoverflow.com/a/52980559/2055854CompletionService
と比較しCompletableFuture
て、あるべきだと言っているこの回答を見てきました。実装も同じでしょうか。はいの場合、その理由をより詳しく説明していただければ幸いです。FutureTask
java - 完了サービスからスレッドを強制終了しますか?
問題
完了サービスを使用し、子スレッドを生成して ETL を実行しています。IDE でデバッグしてからすべてのプロセスを停止すると、CPU を殺してしまうゾンビ スレッドがまだたくさんあることに気付きます。これは、子スレッドを適切に終了していないためです。
最小の例
考え
基本的に、私Callable<Boolean>
は完成サービスに提出します。
デバッガーを停止しても、このスレッドはおそらくまだ実行中です。この部分を追加したところfuture.cancel(true)
、子スレッドから継続的にアップロードされたファイルが停止したようですが、これらの Java プロセスがアクティビティ モニターで実行されています。
これをどう考えたらいいのかな?と思います。基になる ETL が完了したかどうか (true/false) を教えてくれる呼び出し可能オブジェクトが必要です
編集:future.cancelは実際にはかなり役に立っているようです..これは私が使いたいものですか?
java - CompletionServiceで例外をスローしている呼び出しを知る方法は?
いくつかのメソッドを並行して呼び出しています。メソッドが例外をスローした場合、メソッドに渡された値を使用したい。
PS: 構文エラーは無視してください。