今天在Unity3D编辑器中进行功能测试的时候,编辑器突然崩溃了(就是整个窗口突然消失,进程直接结束)之后也没有任何错误报告信息提示。好吧,应该是偶现问题,我侥幸地想,我用的好歹也是正版啊,不应该总出这种莫名其妙的问题吧

再次进行同样的功能测试,编辑器又崩溃了,依然没有任何错误报告,这让我想进行调试都无从调起。想想有什么线索吧,突然想起编辑器在硬盘上也是有log输出的,在崩溃的时候,如果已经进行了错误log输出,那么就可以找到崩溃的线索。在磁盘上翻了下,最后在以下目录找到了log文件:

C:\Documents and Settings\xxxx(用户名)\Local Settings\Application Data\Unity\Editor,里面有两个文件:

Editor.log——察看了下内容,属于编辑器在编辑阶段的log输出,主要是编译时产生dll信息,warning和错误。

Editor-prev.log——这个是运行期的log输出,包括了开发者自己调用Debug.log函数族所输出的信息,以及Mono本身的运行时异常信息

在Editor-prev.log中终于有所发现:

StackOverflowException: The requested operation caused a stack overflow.
  at System.Convert.ToInt32 (Double value) [0x00000] in <filename unknown>:0 
  at Test.Scan (Int32 _depth, Int32 _octant, Double _startSlope, Double _endSlope) [0x00041] in     F:\TestDemo\Assets\Test.cs:384

就是栈溢出了,看了下Scan函数,是个递归函数,确实会造成栈溢出,走读了下代码,崩溃得以解决。我在想,为什么诸如NullReference之类的异常不会导致Unity3D编辑器崩溃,而栈溢出会导致呢?还是说并非所有的栈溢出异常都回导致编辑器崩溃呢?

小结:当编辑器崩溃无法察看console上的输出信息时,可以到硬盘的目录下寻找线索:

C:\Documents and Settings\xxxx(用户名)\Local Settings\Application Data\Unity\Editor

 

(转)关于Unity3D的编辑器崩溃时的线索定位的更多相关文章

  1. 关于Unity3D的编辑器崩溃时的线索定位

    今天在Unity3D编辑器中进行功能測试的时候,编辑器突然崩溃了(就是整个窗体突然消失,进程直接结束)之后也没有不论什么错误报告信息提示.好吧,应该是偶现问题.我侥幸地想,我用的好歹也是正版啊,不应该 ...

  2. (转)Unity3d UnityEditor编辑器定制和开发插件

    在阅读本教程之前,你需要对Unity的操作流程有一些基础的认识,并且最好了解内置的GUI系统如何使用. 如何让编辑器运行你的代码 Unity3D可以通过事件触发来执行你的编辑器代码,但是我们需要一些编 ...

  3. 【转载】Unity3d UnityEditor编辑器定制和开发插件

    在阅读本教程之前,你需要对Unity的操作流程有一些基础的认识,并且最好了解内置的GUI系统如何使用. 如何让编辑器运行你的代码 Unity3D可以通过事件触发来执行你的编辑器代码,但是我们需要一些编 ...

  4. 让linux中的程序崩溃时生成core文件

    当我们的linux程序崩溃的时候,常常会有这样的提示:    Segmentation fault (core dumped)    段错误 (核心已转储)    提示说生成了core文件,但是此功能 ...

  5. IIS崩溃时自动抓取Dump

    背景:在客户现场,IIS有时会崩溃,开发环境没法重现这个bug,唯有抓取IIS的崩溃是的Dump文件分析. IIS崩溃时自动抓取Dump,需要满足下面几个条件 1.启动 Windows Error R ...

  6. [转]让程序在崩溃时体面的退出之SEH+Dump文件

    原文地址:http://blog.csdn.net/starlee/article/details/6649605 在我上篇文章<让程序在崩溃时体面的退出之SEH>中讲解了SEH中try/ ...

  7. [转]让程序在崩溃时体面的退出之Dump文件

    原文地址:http://blog.csdn.net/starlee/article/details/6630816 在我的那篇<让程序在崩溃时体面的退出之CallStack>中提供了一个在 ...

  8. [转]让程序在崩溃时体面的退出之CallStack

    原文地址:http://blog.csdn.net/starlee/article/details/6618849 在我的那篇<让程序在崩溃时体面的退出之Unhandled Exception& ...

  9. 让程序在崩溃时体面的退出之Dump文件

             在我的那篇<让程序在崩溃时体面的退出之CallStack>中提供了一个在程序崩溃时得到CallStack的方法.但是要想得到CallStack,必须有pdb文件的支持.但 ...

随机推荐

  1. libusb 示例

    #include <usb.h> #include <stdio.h> #define VERSION "0.1.0" #define VENDOR_ID ...

  2. bzoj 3513 [MUTC2013]idiots FFT 生成函数

    [MUTC2013]idiots Time Limit: 20 Sec  Memory Limit: 128 MBSubmit: 806  Solved: 265[Submit][Status][Di ...

  3. bzoj 3771 Triple FFT 生成函数+容斥

    Triple Time Limit: 20 Sec  Memory Limit: 64 MBSubmit: 847  Solved: 482[Submit][Status][Discuss] Desc ...

  4. socket编程 ------ 建立 TCP 服务器和客户端流程(阻塞方式)

    服务器端: 服务器端先创建一个socket,然后把这个socket绑定到端口上,接着让它向tcp/ip协议栈请求一个监听服务并创建一个accept队列来接受客户端请求. void creat_tcpS ...

  5. IntelliJ 创建main函数快捷

    今天偶然发现了IntelliJ中 创建main函数的快捷键,依次还有for循环,System.out.println(); 在编写代码的时候直接输入psv就会看到一个psvm的提示,此时点击tab键一 ...

  6. bzoj1574 [Usaco2009 Jan]地震损坏Damage

    传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1574 [题解] 贪心把report的点的旁边所有点破坏即可. # include <s ...

  7. 【洛谷 P3842】[TJOI2007]线段(DP)

    裸DP.感觉楼下的好复杂,我来补充一个易懂的题解. f[i][0]表示走完第i行且停在第i行的左端点最少用的步数 f[i][1]同理,停在右端点的最少步数. 那么转移就很简单了,走完当前行且停到左端点 ...

  8. 愚蠢的LCAAAAA~~~~(>_<)~~~~

    很愤怒!特别愤怒!超级愤怒!!! 我LCA居然错了!!而且是那种特别愚蠢的错误 我把代码都交错了!!! silasila 话不多说,代码上特别详细了 #include<bits/stdc++.h ...

  9. HDU2594(简单KMP)

    Simpsons’ Hidden Talents Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java ...

  10. inno setup 5 添加快捷方式默认选中

    转载:https://www.cnblogs.com/x_wukong/p/5012412.html https://zhidao.baidu.com/question/312006120.html ...