关于cocos2d::Scheduler的调用重复次数问题
来源:互联网 发布:软件测试人员岗位职责 编辑:程序博客网 时间:2024/06/06 13:13
用schedule函数设置了一个间隔0.1秒不限重复次数的定时任务,在定时任务回调函数中加载图片资源,每次加载一个,直到完成时立即调用unschedule移除定时任务。当图片文件很小的时候没有任何问题,但是加载大图时,在调用了unschedule之后这个定时任务仍然被执行了一次,通过研究引擎源码终于发现了问题所在。
void Timer::update(float dt){ ... ... while (_elapsed >= interval) { trigger(interval); // 调用定时任务 _elapsed -= interval; // 这行是关键 _timesExecuted += 1; if (!_runForever && _timesExecuted > _repeat) { cancel(); break; } if (_elapsed <= 0.f) { break; } }}原来是因为一帧执行时间太长,使_elapsed超过了interval的两倍以上。
后来在调用schedule时明确指定了重复次数repeat参数,程序终于按照预设行事了。
因此如果你需要精确控制schedule执行次数,最好不要用不限重复次数的方式。
0 0
- 关于cocos2d::Scheduler的调用重复次数问题
- 关于NSXMLParser的foundCharacters方法调用次数的问题
- cocos2d scheduler 的优势
- 关于getview方法调用时机和次数的问题
- 关于ListView中getView被重复调用的问题
- 关于ListView中getView被重复调用的问题
- 关于ListView中getView被重复调用多次的问题
- cocos2dx 的scheduler (全局scheduler) 的问题
- 关于cocos2d调用相册及摄像头问题
- 关于重复定义的问题
- 关于scheduler相关的概念
- 关于健身运动每组次数的问题
- 关于控制初始化次数的问题
- 关于出现字符、数字次数的问题
- 关于GridView的getView方法会多次重复调用的问题
- 关于百度地图周边雷达的回调函数会重复调用问题的解决方案
- 关于ListView的getView方法被多次重复调用的问题
- 关于oracle Scheduler的介绍——管理scheduler
- linux环境tab键缩进4个空格
- 了解 Android N
- 第15周项目2-用哈希法组织关键字
- 第十四周 项目1-验证算法(1)
- VS(visual studio)遇到无法打开iostream的解决方案
- 关于cocos2d::Scheduler的调用重复次数问题
- HTML 转 PDf 方法一 wkhtmltopdf.exe
- SAP Business One和SAP All-in-One
- 建立docker私有库(docker registry)
- eclipse中tomcat远程调试
- javascript正则表达式例子
- 第十四周 项目三 是否二叉排序树?
- 通信知识
- Retrofix