2011-09-06 75 views

回答

2

该操作可能会使您的应用程序超过6MB的内存限制,并且手机正在杀死它。

您可以连接调试器中运行:http://msdn.microsoft.com/en-us/library/microsoft.phone.scheduler.scheduledactionservice.launchfortest(v=vs.92).aspx

这将让你看到发生了什么。另外考虑记录你的应用程序正在使用的内存量,看看你是否接近极限:http://msdn.microsoft.com/en-us/library/microsoft.phone.info.devicestatus(v=vs.92).aspx

0

要小心调用任何类型的序列化库(或任何其他库),因为它会很快撞上你的记忆使用超过6MB的限制,这将无声无息地杀死你的代理。

另请注意,在真实设备上,您的代理通常会以4-4.5 meg开始,显着高于仿真器。这意味着所有你的代码和它调用的库在最坏的情况下需要少于1.5兆。

+0

小心!通过连接DeviceStatus的调试器报告更高的内存使用情况,然后不使用。 使用一个空的定期任务编译为调试,设备上文件的跟踪显示:peak = 2.452KB limit = 6.144KB remaining = 3.692KB –