我一直在努力學習一款小遊戲。 該遊戲的目的是它將在線,但我有一些麻煩,如何序列化從服務器發送到客戶端的命令。 有很多不同的命令可以發送,手動處理這些令我瘋狂。目前我正在使用很多'ifs'來做到這一點,但我希望有一個可以幫助的設計模式。 我想用不同種類的對象解開消息,這樣我就可以從某種隊列中得到它們,並有效地對待它們......但是我想要部分或全部自動完成。什麼是序列化遠程命令的好方法?
解決這類問題有沒有好的做法?如果它也很高效,這將是一件好事。
在此先感謝。 PS:雖然這是一個概念性問題,但我使用的是C++,因此某些特定的解決方案也可以。
演員模型很容易實現。看看https://github.com/rfqu/CodeSamples/tree/master/src/simpleactor有多簡單。它用java編寫,但可以用C++輕鬆重寫。它需要一個Executor,它只是一個線程池,而https://www.google.com/search?q=thread+pool+c%2B%2B表明C++中有很多線程池實現。 –