Xamarin.IOS 应用不断启动和完成许多线程
Xamarin.IOS app keep starting and finishing many threads
我在调试我的 xamairn.ios 应用程序时注意到,只要应用程序 运行 有很多 "Unknown" 线程一直在启动和完成,即使我不触摸屏幕也是如此或者不做任何后台任务。
我刚刚在 visual studio 中单击开始调试并开始计算这些线程。
我的问题:有人知道这些线程是什么吗?
首先,这没什么好担心的,即使没有用户输入,device/simulator 也会启动线程来处理垃圾收集之类的事情。其中一些将是自动释放池,用于处理内存中不再需要的对象的释放。请记住,iOS 在他们的设备上有一个相当强大的内存管理系统。1
例如,如果您要 运行 针对您的应用程序的分析工具,并且仅关注内存使用情况,您会看到诸如对 'heap allocations'、'core data objects' 的引用之类的内容, 'Core UI', 'Core Animation' 等等
即使您没有与它交互,仍有大量系统进程运行针对该应用程序以保持性能。
2
这显然不是一个详尽的列表,因此对于冗长的答案,您可能需要深入挖掘细节。
2 Ref Image - "What every iOS developer should be doing with instruments"
我在调试我的 xamairn.ios 应用程序时注意到,只要应用程序 运行 有很多 "Unknown" 线程一直在启动和完成,即使我不触摸屏幕也是如此或者不做任何后台任务。 我刚刚在 visual studio 中单击开始调试并开始计算这些线程。
我的问题:有人知道这些线程是什么吗?
首先,这没什么好担心的,即使没有用户输入,device/simulator 也会启动线程来处理垃圾收集之类的事情。其中一些将是自动释放池,用于处理内存中不再需要的对象的释放。请记住,iOS 在他们的设备上有一个相当强大的内存管理系统。1
例如,如果您要 运行 针对您的应用程序的分析工具,并且仅关注内存使用情况,您会看到诸如对 'heap allocations'、'core data objects' 的引用之类的内容, 'Core UI', 'Core Animation' 等等
即使您没有与它交互,仍有大量系统进程运行针对该应用程序以保持性能。
这显然不是一个详尽的列表,因此对于冗长的答案,您可能需要深入挖掘细节。
2 Ref Image - "What every iOS developer should be doing with instruments"