gpt4 book ai didi

iphone - 在 glDrawArrays() 上调试 SIGKILL。苹果手机

转载 作者:可可西里 更新时间:2023-11-01 03:35:12 25 4
gpt4 key购买 nike

我希望有人能帮我弄清楚这是怎么回事。

我正在使用 cocos2d 框架 开发一款 iPhone 游戏。有时我的代码会因为 SIGKIL 信号而停止。如果我按下“继续”按钮,游戏将毫无问题地继续。控制台日志清晰(无错误或警告信息)我在使用 OpenGL 绘制纹理化矩形的自定义类中获取了它。此代码每秒执行约 300 次,而我每 1-2 小时仅收到一次 SIGKILL

这是一段代码:

glColor4f(1.f, 1.f, 1.f, 1.f);
i = 1;
glBindTexture(GL_TEXTURE_2D, curText);
glVertexPointer(2, GL_FLOAT, 0, screenCoord [i]);
glTexCoordPointer(2, GL_FLOAT, 0, textureCoord [i]);
SIGKIL --> glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);

这是当时数组的内容:

(gdb) p *screenCoord[1]@8
$8 = {0, 296, 249.827072, 296, 0, -0, 249.827072, -0}
(gdb) p *textureCoord[1]@8
$12 = {0.456224144, 0.29296875, 0.700195312, 0.29296875, 0.456224144, 0.58203125, 0.700195312, 0.58203125}

堆栈跟踪:

#0  0x123028a7 in <????> ()
#1 0x12301528 in <????> ()
#2 0x0a767092 in gldRenderFillPolygonPtr ()
#3 0x12300185 in <????> ()
#4 0x0a55c3e1 in gleDrawArraysOrElements_ExecCore ()
#5 0x0a555280 in glDrawArrays_IMM_Exec ()
#6 0x01522c7c in glDrawArrays ()
#7 0x0007e6bd in -[CLScrollingBack draw] at /MyProjects/_ROBOTS/RobotsAttack/AbductedAliens game template/CLScrollingBack.m:430
#8 0x001bfdaa in -[CCNode visit] ()
#9 0x001bfd7d in -[CCNode visit] ()
#10 0x001bfd7d in -[CCNode visit] ()
#11 0x0020f708 in -[CCDirectorIOS drawScene] ()
#12 0x00211bb4 in -[CCDirectorDisplayLink mainLoop:] ()

日志中的最后几行是:

2012-06-20 13:05:27.368 RobotsAttack![9487:207] cocos2d: CCSpriteBatchNode: resizing TextureAtlas capacity from [2] to [4].
2012-06-20 13:05:27.368 RobotsAttack![9487:207] cocos2d: CCSpriteBatchNode: resizing TextureAtlas capacity from [4] to [6].
Current language: auto; currently objective-c

如果有人能告诉我如何调试这种情况并确定发生了什么,我将不胜感激。

最佳答案

您可能知道这一点,但当应用程序需要在没有“崩溃”的情况下终止时,iOS 会发送 SIGKILL。一个明显的例子是当用户双击主页并按下应用程序上的红色减号并终止它时。

如果应用程序使用了太多内存,也可以发送 SIGKILL。确保您正在记录内存警告,并在收到 SIGKILL 之前查看是否收到警告。如果是内存问题,则意味着您需要进行一些清理工作,或者某处存在内存泄漏(使用工具可以轻松解决)。

此外,可能只是 Xcode 不稳定...它不是一个完美的系统,因此请尝试在关闭 xcode 的情况下在模拟器上玩游戏,看看它是否仍然会崩溃。

关于iphone - 在 glDrawArrays() 上调试 SIGKILL。苹果手机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11119382/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com