我在C ++中寻找一个简单的设计对象,我理解了大部分涉及的代码,但我对这门语言很陌生,所以“工作的基础”会有所帮助。
概念基本上是一个“任务”类,作为作业在循环中运行的基础。
BaseTask类> AudioTask类
控制器循环>存储指向运行任务的指针的std列表
while(false){循环列表并运行每个指针然后重新开始}
可以在列表中插入附加任务,根据需要添加到循环中,为每个游戏帧提供几乎任何操作的基础。后来我希望进入线程等,但是现在我只想要一些简单的东西。
有没有人知道或想要分享一些适合这种模式的示例代码?
答案 0 :(得分:1)
thread pool符合模式。
它强加了额外的限制,即插入到线程池中的作业(作为仿函数)必须是独立且线程安全的,但它以先来先服务的方式并行处理所有作业。 (我实际上是把这个想法作为我自己项目的基础。)
虽然在学习像C ++这样复杂的语言时,使用线程可能不是最好的事情,但探索它仍然是一个有用的想法。
答案 1 :(得分:0)
答案 2 :(得分:0)
对于他们之间进行通信的专门线程,你可能会很好。有一个轻量级库,可以促进与LITM的线程间消息传递(documentation)。