cocos2dx创建线程

转载 2013年12月02日 19:39:54

转自:http://blog.csdn.net/weyson/article/details/7865414


为了防止程序假死,需要另起线程处理网络连接。

好吧,那就从创建线程开始。

这次我的环境是在Mac下。在网上查阅和参考了很多资料,感谢这些无私奉献的前辈们的努力。

进入话题。

头文件:

  1. pthread_t th_socket; // 起这个名字本打算用在socket上的  
  2. int threadStart();// 启动线程的方法  
  3. static void* thread_funcation(void *arg);// 被启动的线程函数,注意必须是静态方法  

函数定义:(我最喜欢把我的练习都写在HelloWorld类里面了,哈哈)

  1. // 启动线程的方法  
  2. int HelloWorld::threadStart()  
  3. {  
  4.     int errCode=0;  
  5.     do {  
  6.         pthread_attr_t tAttr;  
  7.         errCode=pthread_attr_init(&tAttr);  
  8.         CC_BREAK_IF(errCode!=0);  
  9.         errCode=pthread_attr_setdetachstate(&tAttr, PTHREAD_CREATE_DETACHED);  
  10.         if(errCode!=0)  
  11.         {  
  12.             pthread_attr_destroy(&tAttr);  
  13.             break;  
  14.         }  
  15.         errCode=pthread_create(&th_socket, &tAttr, thread_funcation, this);  
  16.           
  17.     } while (0);  
  18.     return errCode;  
  19. }  
  20.   
  21. // 需要线程来完成的功能都写在这个函数里  
  22. void* HelloWorld::thread_funcation(void *arg)  
  23. {  
  24.     CCLOG("thread started...");  
  25.     return NULL;  
  26. }  
然后我在HelloWorld::init()方法的后面加了一句代码来启动新线程:

  1. this->threadStart();  

编译后运行:

在输出窗口中可以看到:

说明线程正确执行。



相关文章推荐

cocos2dx创建线程

原计划是开始学习cocos2dx socket客户端的开发, 在网上查了些资料,说为了防止程序假死,需要另起线程处理网络连接。 好吧,那就从创建线程开始。 这次我的环境是在Mac下。在网上查阅和...
  • weyson
  • weyson
  • 2012-08-14 16:09
  • 9042

cocos2dx2.0 与cocos2dx3.1 创建线程不同方式总结

cocos2dx2.0 与cocos2dx3.1 创建线程不同方式总结,cocos2dx2.0中创建线程的方式在cocos2dx3.1中同样可用,但需要NDK编译,VS2012编译会报错的。
  • iasxk
  • iasxk
  • 2014-06-12 10:14
  • 1395

cocos2dx2.x 与cocos2dx3.x创建线程不同方式总结

1、cocos2dx2.0 中 1.配置 在使用pthread之前,需要把头文件和库文件链接进来。 1.1头文件 pthread.h放在\cocos2d-x目录\cocos2dx\pl...

Bullet(Cocos2dx)之创建地形

  • 2015-01-09 19:46
  • 529KB
  • 下载

cocos2dx 3.1.1 创建项目编译到android上运行

前期准备:python 2.7 , ndk , sdk , apache ant , cocos2

cocos2dx多线程

  • 2013-12-30 17:18
  • 46.54MB
  • 下载

cocos2dx通过SpriteFrame创建数字标签类

cocos3.2自定义字体标签不支持SpriteFrame创建,也没有环形的,有时候因为要加入数字标签到比较尴尬的层中导致GL Calls暴涨,汗颜,看着都怕。这个类主要是解决这两个问题,能实现的效果...

Cocos2dx例程源代码

  • 2012-11-04 22:44
  • 14.49MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)