在iPhone 3G上分析iOS游戏时,乐器报告称系统调用pthread_setspecific(从许多看似无关的位置调用)是最大的CPU瓶颈.谷歌告诉我这涉及存储线程的元数据,但是由于整个引擎都是单线程,我不确定如何跟踪它.这与CADisplayLink有关吗?我可以优化特定方案以更好地解决这个问题吗?
以下是一些可能有助于回答我的问题的相关信息:
>设备:iPhone 3G
> iOS版本:4.2.1
>游戏代码完全是C,应用层在obj-C中.
>游戏使用OpenglES1.1
>不幸的是,RTTI和C异常都是必需的,因此也是如此.
>这是通过仪器中的CoreAnimation分析器运行发布版本(带有调试符号).
最佳答案 异常处理生成的代码使用线程本地存储来存储其展开堆栈.你无能为力.尽可能删除异常.没有它编译部分代码.