問題タブ [periodic-processing]
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.
c++ - クロスプラットフォーム C++ 高精度イベント タイマーの実装
Windows プラットフォームから来た私は通常、Windows マルチメディア タイマーを使用して、1 ミリ秒 ± 1 ミリ秒の分解能で定期的なコールバックを生成しました。したがって、1 秒あたり 1000 回の非常に等距離のコールバックを実際に生成できました。ビジー待機を行わずにこの精度を達成するために、 MSは、ハードウェア ドライバーに直接アクセスする高精度イベント タイマーを使用しました。
この種の高精度タイマーのクロスプラットフォーム実装を提供するブーストライブラリなどを見つけたいと思っていました。しかし、私が見つけたのは Boost-ASIO タイマーだけです。彼らは精度についてまったく話していないので、高精度の要件を満たしていないと思います。10 ミリ秒のジッターは大きすぎます。
だから..高精度イベントタイマーのクロスプラットフォーム実装のようなものはありますか? それとも、Boost-ASIO はすでに十分に正確なのでしょうか? おそらく、Boost は内部で HPET を使用しており、どこにも言及していません。
c# - 複数のスレッドを定期的に実行するための C# デザイン パターン
私の C# Windows サービスには以下の要件があります。
- Service の開始時に、db からデータのコレクションをフェッチし、メモリに保持します。
- 3 つの異なるスレッドから定期的に実行されるビジネス ロジックを用意します。
- 各スレッドは、手順 1 で説明したデータ コレクションからのデータの異なるサブセットを使用して、同じビジネス ロジックを実行します。各スレッドは、異なる結果セットを生成します。
- データ収集に変更が発生した場合、3 つのスレッドすべてが定期的に実行されます。
クライアントがサービスを呼び出すと、サービスはスレッド実行のステータスを返すことができる必要があります。
C# には、定期的なスレッド実行を実装するさまざまなメカニズムがあることを知っています。タイマー、スリープ状態のスレッド、イベント eventwaithandle など、この要件に最適なスレッド化メカニズムまたは設計パターンを理解しようとしています。