問題タブ [scheduledexecutorservice]

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.

0 投票する
1 に答える
162 参照

java - 使用する時間単位について「ヒント」を与えるにはどうすればよいですか?

スケジュールされたエグゼキュータを介してタスクをスケジュールするクラスがあります。
クラスをでパラメータ化する必要がありますTimeUnitTimeUnitつまり、スレッドプールの遅延などを使用してクラスを構築し、たとえば秒/ミリ秒/分などを指定する方法を使用できるようにしたいということです。パラメーターを
使用してから、次のことを実行します。String

など
、ここでの唯一の方法ですか、それとも別の方法がありますか?

0 投票する
1 に答える
560 参照

jsf - マネージド Bean の内部クラスからのメッセージを表示しています

このディスカッションで説明したソリューションを使用して、BackgroundJobManager を JSF Bean クラス内の内部クラスとして実装しました。また、BackgroundJobManager のスケジュールされた時間に実行されるスレッドとして、ABCTask (これも内部クラス) を作成しました。メッセージを JSF ページにプッシュする必要がありますが、タスク クラス ABCTask からプッシュすると NPE が発生します。同じことが外側の Bean でも機能するので、この内部クラスと Bean のコンテキストに関係があると確信しています。誰かがこれに対する解決策を知っていれば幸いです。

私の内部クラスコードは以下の通りです:

$printTimeoutMessage() は次のとおりです。

0 投票する
3 に答える
6220 参照

java - ScheduledExecutorService で固定レート ポーラーを実装する方法は?

次のクラスがあるとします。

ScheduledExecutorServiceコア スレッド プール サイズは 4 ですが、複数のポーラー スレッドが作成されることはありますか? thisに渡されるので、それはscheduleAtFixedRateスレッドが 1 つしか存在しないことを意味しますか? それとも、より複雑なことが舞台裏で発生しますか?

2 つのおまけの質問:-

  1. runningする必要がありstaticますか?
  2. CORE_POOL_SIZE冗長ですか?
0 投票する
1 に答える
81 参照

concurrency - 呼び出し制限付きのシングルスレッド ScheduledThreadPoolExecutor

java.util.concurrent.Executors を利用してランナーを起動したいと思います。問題は、一定の回数発射したかったことです。それらのランナーを固定レートと呼ぶことが重要です。

私にとっては、 Executors#newSingleThreadScheduledExecutor を使用するだけで十分なので、なぜこれが不可能なのだろうか....

ありがとう

0 投票する
3 に答える
4775 参照

java - ScheduledThreadPoolExecutor に引数を渡す方法は?

ScheduledThreadPoolExecutor に引数を渡すにはどうすればよいですか?

次のコードがあります。i が変数 'num' を宣言しており、それが引数として exampleFunction() に渡されていることに気付くでしょう。exampleFunction には ScheduledThreadPoolExecutor が含まれています。public void run() 内で変数「num」を使用できるようにしたい。それを行う方法はありますか?

0 投票する
1 に答える
1284 参照

java - ScheduledExecutorService の使用とロックされたソケット インストリームのクリーンアップ

この質問の動機 非常に高価なハードウェアで動作する巨大な製品を実行しています。テスト目的でシャットダウンすることはできません。また、実稼働環境に悪い jar を配置することもできません。本番環境を台無しにしないようにできる限り確実にする必要があります。

ステージング セットアップでこれを実行する前に、明らかな問題がないか以下のコードを確認する必要があります (これは非常に高価です)。

問題 ソケットベースのアプリケーションを使用していますが、クライアントが CloseConnection リクエストを明示的に送信しないことがあります。また、IOException が発生しない場合もあります。これは、ブロッキングreadObject呼び出しでスレッドを保持することによって発生します。

タイムアウト後に接続を閉じて、このスレッドを解放する必要があります。サーバーから新しいリクエストを受け取ると、タイムアウトが更新されます。

したがって、以下の3つの部分が表示されます

  • 初期化中
  • while(true) ループ内の readObject 呼び出し、およびスケジュールされたサービスのリセット
  • インストリームの実際の終了

コード

Timer/TimerTask の代わりに ScheduledExecutorService を使用するようにアドバイスされました。

編集:小さなアプリケーションをテストしたところ、うまくいくようです。私はまだあなたのフィードバックが必要です。

再度編集:

アドバイスに従って、以下のコードを変更しました。

初期化中

このコードを削除しました

readObject の前後に置換

クリーンアップ時

0 投票する
1 に答える
525 参照

java - タイムアウトとして ScheduledExecutorService が AlertDialog を表示しない

アプリにタイムアウト動作を実装しようとしています。また、タイムアウトが実際に発生する 5 秒前に警告 (アラート ダイアログ) が表示されるはずです。

そのために ScheduledExecutorService を使用したいと考えています。

これまでのところ、関連するコードは次のとおりです。

およびタイムアウト動作を処理するメソッド:

setTimeout は onCreate() で呼び出されるため、アプリは起動後 5 秒で切断されます。

私が直面している問題は次のとおりです。

  • 「setTimeout」で呼び出された runnable が「disconnectRunnable」に設定されている場合、正常に動作し、アプリは 5 秒後に切断されます。

  • 「timeoutRunnable」に設定すると、alertDialog は表示されません + 「showTimeoutAlertDialog」で 5 秒後に「disconnectRunnable」を呼び出す必要がありますが、アプリは切断されません!?

ここで ScheduledExecutorService の何かがうまくいかなかったと思いますが、解決策が見つかりません。

ご協力ありがとうございました :)

0 投票する
1 に答える
184 参照

java - スケジュールされたタスクの上書き

新しいスケジュールされたタスクによって上書きされない限り、x 秒後にタスクを実行するにはどうすればよいでしょうか?

シナリオは、ユーザーが JTextField への入力を終了してから 1 秒後にタスクを実行したいというものです。そのためには、タスクをスケジュールし、「ドキュメント」が変更されるたびに再スケジュールする必要があります。

を使用してみましたScheduledExecutorServiceが、スケジュールは前のタスクをキャンセルするのではなく、タスクをリストに追加するだけです。

これが私が行きたいところです:

0 投票する
1 に答える
145 参照

java - ScheduledExecutorService で終了したタスクはどうなりますか?

現在、Timer の代わりに ScheduledExecutorService を使用するようにアプリケーションを変更していますが、古いTimer.purge().

Executor ではどのように処理されますか? 何か心配する必要はありますか?