在模拟器中运行的iPhone应用程序不会退出(或被杀死)

时间:2009-06-07 12:42:23

标签: iphone xcode

我在模拟器中运行了一个不会退出的iPhone应用程序。我也无法杀死它,不使用活动监视器,也不能杀死或杀死-9或killall。

cyrus:~ ajbrehm$ ps auxc|grep Vocky
ajbrehm  76450   0.0  0.1   153116   5212   ??  UE   12:59pm   0:00.05 Vocky
ajbrehm  76437   0.0  0.1   153116   5212   ??  UE   12:58pm   0:00.05 Vocky
ajbrehm  76350   0.0  0.1   153116   5212   ??  UE   12:57pm   0:00.05 Vocky
ajbrehm  76336   0.0  0.1   153116   5212   ??  UE   12:56pm   0:00.05 Vocky
ajbrehm  76329   0.0  0.1   153116   5212   ??  UE   12:56pm   0:00.05 Vocky
ajbrehm  76276   0.0  0.1   153116   5212   ??  UE   12:56pm   0:00.05 Vocky
ajbrehm  76245   0.0  0.1   153116   5212   ??  UE   12:55pm   0:00.05 Vocky
ajbrehm  76176   0.0  0.1   153116   5212   ??  UE   12:55pm   0:00.05 Vocky
ajbrehm  76159   0.0  0.1   153116   5212   ??  UE   12:54pm   0:00.05 Vocky
ajbrehm  76150   0.0  0.1   155136   9264   ??  UE   12:54pm   0:00.10 Vocky

每当我在模拟器中运行应用程序时都会发生这种情况。有时候Xcode的调试器会接受它并且模拟器不再运行应用程序,因为正如控制台所说,它已经在运行。

该程序使用适用于iPhone应用程序的常规Xcode模板之一,在模拟器和物理iPhone上运行正常。在我看来,这种行为是新的。但是代码没有改变,只有包含文本的数据文件才会改变。

有什么想法吗?

2 个答案:

答案 0 :(得分:3)

好的,我想出来了。

过了一段时间,VMware也开始表现得很奇怪,并在活动监视器中留下了vmware僵尸。其中一个VMware实例阻止了GUI。 (由于某些原因,它也不断改变鼠标指针跟踪速度。我不知道为什么允许VMware更改系统首选项并阻止GUI。)

最终我不得不关闭GUI(我杀死了loginwindow和windowserver)并解决了问题。

几天前,我尝试关闭Spotlight搜索,因为它在复制过程中开始索引600 GB的传入数据(由于这一点,从Firewire 800磁盘上花了将近6个小时)。出于某种原因,在复制过程中阻止Spotlight重新启动的唯一方法是将ReportCrash重命名为其他内容(“ReportCrash2”),以便找不到它。这在当时是有道理的。

问题在于我忘记了我已经做到了。

一旦ReportCrash再次可用,每个僵尸都报告了它的崩溃并且消失了,包括iPhone程序和VMware界面的许多实例。这花了大约5分钟。 (在此过程中,我了解到24英寸Apple Cinema Display是一款优秀的文本界面显示器!最后我可以看到每一行没有换行符。)

完成后,我重新启动了windowserver和loginwindow,并可以重新登录GUI。我的VMware VM也幸免于难(因为我没有重新启动),VMware再次工作,我可以连接到所有Windows VM,僵尸进程已经消失。

一旦发现它与Xcode或gdb无关,那么这是一个十分钟的问题。

我讨厌ReportCrash。

答案 1 :(得分:1)

首先停止gdb(调试器)。