我需要实现以下场景,请帮助我:
- 将维护一个队列,其中将包含一些对象。
- 当一个对象插入队列时,将为该对象启动一个计时器。
- 每当该对象上发生事件时都会发送信号(该事件可能像超时,一些错误等)。
- 将捕获为此对象发生的事件并接收对象 ID。需要对象 ID 来区分队列中存在的对象并采取适当的操作。
我对大量对象不起作用的方法如下:
- 为每个对象创建一个线程,该线程会将对象 ID 传递给该对象
thread_function1(void *object_id);
并sleep()
用作该对象的计时器。 - 现在对于其他对象,我必须通过创建来做同样的事情
new thread_function2(void *object_id);
上述方法将不起作用,因为我希望它是动态的。
操作系统:Linux。
我想在 c++ 中实现这个,我从来没有实现过这个,所以我需要你的帮助和指导才能继续前进。任何在线教程,参考都会有很大帮助。提前致谢。