次のシナリオを達成する必要があります。これを手伝ってください:
- いくつかのオブジェクトを含むキューが維持されます。
- オブジェクトがキューに挿入されると、そのオブジェクトのタイマーが開始されます。
- そのオブジェクトでイベントが発生するたびにシグナルが送信されます (イベントは、タイムアウトやエラーなどの可能性があります)。
- このオブジェクトに対して発生したイベントがキャプチャされ、オブジェクト ID が受信されます。オブジェクト ID は、キューに存在するオブジェクトを識別し、適切なアクションを実行するために必要です。
多数のオブジェクトに対して機能しなかった私のアプローチは次のとおりです。
- オブジェクト ID を に渡し、そのオブジェクトのタイマーとして
thread_function1(void *object_id);
使用する各オブジェクトのスレッドを作成します。sleep()
- 他のオブジェクトについては、作成して同じことを行う必要が
new thread_function2(void *object_id);
あります。これを動的にしたかったため、上記のアプローチは機能しません。
オペレーティング システム: Linux。
これを c++ で実装したいのですが、これを実装したことがないので、前進するにはあなたの助けと指導が必要です。オンライン チュートリアル、リファレンスは非常に役立ちます。前もって感謝します。