多线程:字符移动、绘图和套接字处理



我正在制作一个小型2d在线游戏,目前我已经在主线程中完成了绘图、角色移动和套接字处理。我认为为这些事情创建一个自己的线程会更方便,尤其是对于套接字处理。

这是我的第一个多线程应用程序,所以我基本上应该只使用它来创建线程吗?我读到我只是使用互斥或关键部分来防止两个线程同时访问数据,我应该使用哪一个?

是的,您应该使用CreateThread方法创建新线程。不要忘记在每个应该处理消息的线程中创建一个消息泵(例如异步套接字处理)。

至于互斥体与关键部分:关键部分更合适,因为您只需要同步一个进程的线程。有关更多详细信息,请参阅互斥和关键部分之间的区别是什么。

使用消息在线程之间进行通信也很方便(请参阅PostThreadMessage)。

最新更新