cocos2dx Mac平台 打印长字符串,游戏卡死
Posted dzqdzq
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cocos2dx Mac平台 打印长字符串,游戏卡死相关的知识,希望对你有一定的参考价值。
1,打开了输出控制台,输出卡死的解决方案:
打开控制台: game -console enable
关闭控制台: game -console false
修改文件 ConsoleWindowController.m
#define SKIP_LINES_COUNT 300 #define MAX_LINE_LEN 409600 #define MAX_LINES_COUNT 20000
MAX_LINE_LEN 宏的含义是 一行日志最多MAX_LINE_LEN个字符. 如果要输出的字符串长度超过了MAX_LINE_LEN, 则进行截取,并以 ... 代替
SKIP_LINES_COUNT 宏的含义是 从SKIP_LINES_COUNT行后, 对超过MAX_LINE_LEN字符串进行截取.
也就是说在第300行之前, 你给什么,我就是输出什么. 300行之后,你给了一个长字符串,将进行截取后输出
MAX_LINES_COUNT 宏的含义是 输出控制台最多能容纳的行数. 在这里是2万行, 如果达到了2万行, 则最之前的信息会删除,
之后的输出始终保证输出控制台只有2万行.
如果打印不全就修改MAX_LINE_LEN的值
2, 如果没有打开控制台, 使用luaide工具进行调试输出, 如果出现卡死,那么
修改文件 CCConsole.cpp中log 方法:
删除 Director::getInstance()->getConsole()->log(buf); 这一条语句然后重新编译项目.
这样所有输出都在vscode中, 并且不会出现卡死了.
如果一条输出很长,出现了截取的情况,那么修改MAX_LOG_LENGTH宏
以上是关于cocos2dx Mac平台 打印长字符串,游戏卡死的主要内容,如果未能解决你的问题,请参考以下文章
cocos2dx 在Mac平台下利用Eclipse打包安卓apk安装包详细教程