C ++中的控制器/迷你内核设计模式

时间:2009-09-18 21:36:09

标签: c++ design-patterns controller

我在C ++中寻找一个简单的设计对象,我理解了大部分涉及的代码,但我对这门语言很陌生,所以“工作的基础”会有所帮助。

概念基本上是一个“任务”类,作为作业在循环中运行的基础。

BaseTask类> AudioTask类

控制器循环>存储指向运行任务的指针的std列表

while(false){循环列表并运行每个指针然后重新开始}

可以在列表中插入附加任务,根据需要添加到循环中,为每个游戏帧提供几乎任何操作的基础。后来我希望进入线程等,但是现在我只想要一些简单的东西。

有没有人知道或想要分享一些适合这种模式的示例代码?

3 个答案:

答案 0 :(得分:1)

thread pool符合模式。

它强加了额外的限制,即插入到线程池中的作业(作为仿函数)必须是独立且线程安全的,但它以先来先服务的方式并行处理所有作业。 (我实际上是把这个想法作为我自己项目的基础。)

虽然在学习像C ++这样复杂的语言时,使用线程可能不是最好的事情,但探索它仍然是一个有用的想法。

答案 1 :(得分:0)

请阅读此处了解游戏编程101 part 1part 2 从你的问题来看,你似乎在寻找线程和游戏循环 从单线程应用程序开始,然后转向多线程,因为C ++是一种非常难学的语言,甚至更难掌握。

答案 2 :(得分:0)

对于他们之间进行通信的专门线程,你可能会很好。有一个轻量级库,可以促进与LITM的线程间消息传递(documentation)。