我在我的应用程序(基本上是一个经过修改的移动世界会议)应用程序中遇到问题,当我在Windows中的IOS Emulator
上运行它时,直接在IPad
本身上运行它。我知道有一个不同的过程或参与,所以我不希望它完全相同。
具体来说,我在初始化sql数据库(SqlLite)时遇到错误
"对象未定义"
当我尝试对设备进行单步调试时,我会收到错误,感觉堆栈已经损坏,我甚至无法调试方法。
我的问题是,我可以寻找什么样的差异以及如何调试它们?必须有一些导致问题的事物模式,我只是不知道那是什么或如何弄明白。我正在使用x86上的c#代码。
答案 0 :(得分:0)
是什么导致模拟器表现不同?模拟器不像真实设备那样限制内存使用,因此您可能会在设备上遇到内存警告(如果您没有正确处理它们,则会崩溃)。然而,代码本身运行得更快,因此线程之间的竞争条件更有可能,因此请注意这一点。不要从不同的线程与数据库通信,或者至少使用正确的锁定。当然,只有AOT limitations只出现在设备上。您的LINQ问题对我来说听起来像AOT问题。