首页 > 代码库 > 网游中一个技巧
网游中一个技巧
当我们在开发网络游戏客户端时经常会(肯定会)开一个线程负责接收,发送网络消息,这时我们必然会碰到一些问题如:
在一些对战列表中随时有玩家上下线,这时我们应该会涉及UI线程(主线程)和 网络线程的同步问题:
如果直接在网络线程中获得数据后直接使用的话,肯定会出现各种奇怪的问题。所以一个通用的做法是:
用一个变量来判断:m_bFresh
void UserList::visit(void)
{
CCLayer::visit();
if ( m_bFresh ) {
upDataUserList();
}
m_bInGame = true;
}
因为visit 会一直调用所以当判断可以刷新时直接刷就行了。
void UserList::upDataUserList()
{
m_pUserList = NET_MANAGER->getUserList(); 这个是最新的数据
m_pTableView->reloadData();
m_bFresh = !m_bFresh;
}
网游中一个技巧
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。