我们先建立一个新工程,新建C#文件,然后在Start函数中加入以下代码:
void Start ()
{
while (true)
{
int i = 1;
}
}
把这个C#文件挂到场景摄像机或其它GameObject上。
打开这个工程对应的VS工程(如何用VS编辑unity3d的代码省略),选择“调试/Attach Unity Debuger”菜单来调试unity3d代码。
在Unity3d中启动游戏,然后整个Unity3d必然卡住。切回VS,选择“调试/窗口/线程”菜单,打开线程窗口。这个时候看不到什么,然后如果我们点击调试中的红色中断按钮,奇迹发生了:
在线程窗口出现了正在循环的代码,双击我们的代码的线程,可以把具体的代码显示出来,如下图
以上代码在Unity4.7,VS2013调试。记得先Attach然后再运行游戏。
文章转载自再见Unity3d的死循环,感谢作者诚心诚意提供好文章