私はマルチスレッドのゲーム構造を書くことに手を出しています。以下に基本的な構造を示します。EventManager、LogicManager、およびRendererはすべてスレッドです。それらは、スレッド間ですべての共有リソースを処理するユニバーサルGamestateクラスから読み取り/書き込みを行います。私が理解していることから、Gamestateは技術的にはシングルトンでなければなりません。あれは正しいですか?また、C ++を除いて、http://www.oodesign.com/singleton-pattern.html#early-singletonで説明されているように、「初期初期化シングルトン」として実装する方法も知りたいです。私はC++静的にあまり精通していないので、その結果、「プライベート静的シングルトンインスタンス=新しいシングルトン();」をどこに置くべきかわかりません。C++の行。回避策で同じ効果が得られることは承知していますが、
int main(){
Gamestate gs;
EventManager em(&gs);
LogicManager lm(&gs);
Renderer renderer(&gs);
lm.start();
renderer.start();
em.eventLoop();
return 0;
}