有关MonoTouch AOT助手的ServiceStack.Text.JSConfig是否有任何文档?

时间:2012-12-10 20:19:46

标签: xamarin.ios servicestack aot

ServiceStack.Text.JSConfig是否有关于MonoTouch AOT助手的文档?

我找到了...... ServiceStack JIT Error on MonoTouch 我看过代码但是没有评论,坦率地说它有点神秘。

根据我对AOT过程的理解,所有人都需要做的是确保发出一个类型/方法是在一个源代码中拥有该类型/方法,编译器认为它可以被使用/调用。没有必要在运行时实际使用/调用任何东西。 AOT的重点在于它是一个编译时的过程。因此,只要优化器不删除它,就可以将use / call放在未使用的方法中。

我一直在尝试使用ServiceStack.Text.JsConfig.RegisterTypeForAot(); (在一个未使用的方法中)来解决我的AOT问题但是当我有太多的调用时遇到了其他奇怪的问题。看其他问题......

Calling ServiceStack.Text.JsConfig.RegisterTypeForAot<T>(); with MonoTouch causes SIGSEGV on startup on device

我可能错误地使用了RegisterTypeForAot()方法吗? 其他方法有什么作用? RegisterForAot()和InitAot()

1 个答案:

答案 0 :(得分:1)

除了已经in-line in the JsConfig之外,没有关于JsConfig.InitForAot()的文档,即:

  

提供MonoTouch AOT编译器的提示以预编译泛型类   适用于所有DTO。只需要在静态中调用一次   构造

您只需要为每种类型调用JsConfig.InitForAot()存根和JsConfig.RegisterTypeForAot<T>(),让MonoTouch编译器知道需要提前预生成的通用代码,以便所有代码都是可用于通用反射。如果您遇到问题,请在GitHub project issues上提交一个包含该问题的小型独立测试用例,以便我们查看是否可以解决这些问题。