关于Unity3D的编辑器崩溃时的线索定位
来源:互联网 发布:淘宝幸运抽奖红包在哪 编辑:程序博客网 时间:2024/05/29 06:40
今天在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
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学习文章,如果有什么内容侵犯了你的相关权益,请与官方沟通,我们会即时处理。
0 0
- 关于Unity3D的编辑器崩溃时的线索定位
- 关于Unity3D的编辑器崩溃时的线索定位
- 关于Unity3D的编辑器崩溃时的线索定位
- 关于Unity3D的编辑器崩溃时的线索定位
- 关于Unity3D的编辑器崩溃时的线索定位
- 无线索的崩溃
- 程序崩溃的定位
- 关于Unity3D自定义编辑器的学习
- 关于如何对unity3d编辑器进行扩展的教程
- 关于虚拟机备份的一个线索
- 关于崩溃等问题的定位总结(使用qcc的一些方法来尝试)
- 定位到程序崩溃的地方,TOMBSTONE
- Linux 程序崩溃后的源码定位
- 关于AVPlayer pop时崩溃的问题
- 如何查Unity3D编辑器崩溃原因
- 关于崩溃日志的处理
- 关于手机的定位
- 关于定位的 NSLocationWhenInUseUsageDescription
- NuGet——发布自己的类库包
- SDN提出的意义与前景!!!---菜冬瓜
- 步步为营_Android开发课[1]_认识Android开发
- log4j日志分级输出文件
- 尺寸相关的工具类DensityUtils
- 关于Unity3D的编辑器崩溃时的线索定位
- 关于.错误: 无法将类 BufferedWriter中的构造器 BufferedWriter应用到给定类型;
- Implementing Multiple Scenes and Popovers
- vtkRenderer中Render()函数解析
- 如何pull和push系统中的init.rc文件
- new ,newInstance()
- java学习(1) 引用类型值类型区别 引用传递值传递的区别
- C++primer(七)表达式
- JSP笔记