Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 什么机制检查代码是否存在潜在的bug?_Iphone_Ios_Objective C_Multithreading - Fatal编程技术网

Iphone 什么机制检查代码是否存在潜在的bug?

Iphone 什么机制检查代码是否存在潜在的bug?,iphone,ios,objective-c,multithreading,Iphone,Ios,Objective C,Multithreading,如果我放入任何可能挂起主线程的代码(如while(1)或sleep(xxxxx)),则: - (void)viewDidLoad { [super viewDidLoad]; while (1) { } //[NSThread sleepForTimeInterval:10000]; } 在大约50%的发射中,我在发射后得到了SIGABORT。 发生了什么事? 尽管如此,若程序被启动,它永远不会(至少10分钟)终止,因为它应该根据。那么应该检查应用程序响应性

如果我放入任何可能挂起主线程的代码(如
while(1)
sleep(xxxxx)
),则:

- (void)viewDidLoad
{
    [super viewDidLoad];
    while (1) {

    }
    //[NSThread sleepForTimeInterval:10000];
}
在大约50%的发射中,我在发射后得到了SIGABORT。

发生了什么事? 尽管如此,若程序被启动,它永远不会(至少10分钟)终止,因为它应该根据。那么应该检查应用程序响应性并终止卡住的应用程序的
watchdog

我认为这是一个问题,但它并没有包含有意义的答案

在模拟器和设备上进行了测试。启动崩溃仅出现在sim卡上。尽管该程序在设备或sim卡上均未终止

所以实际上有两个问题: 1.看门狗呢? 2.sim卡上的启动崩溃是什么?


顺便说一句,我的英语很抱歉,我希望你明白我的意思。欢迎你编辑我的帖子。

如果你的应用程序正在崩溃,请使用调试器查看代码。将断点异常添加到第一个视图的
-(void)viewDidLoad
方法作为起点,并查看其崩溃的位置。这通常会很快暴露错误


我建议
viewdidLoad
,因为它在视图进入屏幕之前被称为。如果你的第一个屏幕崩溃了,我会从它的viewDidLoad方法开始

我认为您链接的问题的答案是正确的-您的应用程序没有终止,因为在设备上或在模拟器中使用调试器运行时,看门狗未处于活动状态。不是真的..请查看我编辑的问题..当前应用程序在设备上停留了5分钟以上,我看不到任何看门狗..是的大约5分钟后终止。仔细的编码和调试会检查代码是否存在潜在的错误。其他一切都只是辅助。不要指望总是有帮助。只是想知道是否有这样的机制,因为启动时会导致崩溃