首页 > 代码库 > iOS平台下闪退原因汇总(一):"Ran out of trampolines of type 0/1/2" 运行时间错误

iOS平台下闪退原因汇总(一):"Ran out of trampolines of type 0/1/2" 运行时间错误

"Ran out of trampolines of type 0/1/2" 运行时间错误通常出现在使用大量递归泛型时。要看到这个错误需要连接着设备直接将项目build到设备里运行调试才能看到,您可以暗示 AOT 编译器分配更多type 0、type 1 或 type 2 trampolines。此外,AOT 编译器命令行选项可以在播放器设置 (Player Settings)的其他设置 (Other Setings) 部分指定。对于 type 1 trampolines,指定 nrgctx-trampolines=ABCD,其中 ABCD 是新的 trampolines 所需的值(如 4096)。对于 type 2 trampolines,指定 nimt-trampolines=ABCD,对于 type 0 trampolines,指定 ntrampolines=ABCD。

同时设置多个方式如下:nrgctx-trampolines=8192,nimt-trampolines=8192,ntrampolines=8192

Explanation
nrgctx-trampolines=8096 (these are recursive generics – the default is 1024)

nimt-trampolines=8096 (these are to do with interfaces and the default is 128)

ntrampolines=4048 (are to do with generic method calls, by default there are 1024)

引用自:http://whydoidoit.com/2012/08/20/unity-serializer-mono-and-trampolines/