本篇接上篇继续讲:上篇传送门:http://blog.csdn.net/star530/article/details/24186783
简单的东西我都说的差不多了,想挖点深的差点把自己给填进去。下面实际演练一下。请允许我参考偶尔E往事的一篇线程的博客, 他用的是pThread,这里我就用std::thread。
1.售票
孙鑫老师的C++和Java多线程售票也一直让我念念不忘(好吧,我承认我没看过),这里用cocos2d-x3.0和C++11的std::thread实现一个吧。总共有100张诺亚方舟船票,有2个售票点A和B在售票(一张票就一百亿美元吧),当票卖完了就结束了。我们知道当程序一开始进程就会创建一个主线程,所以可以在主线程基础上再创建2个线程A和B,再线程A和B中分别售票,当票数为0的时候,结束线程A和B。
2.多线程售票,代码如下:
//HelloWorld.h
class HelloWorld : public cocos2d::Layer
{
public:
static cocos2d::Scene* createScene();
virtual bool init();