Xamarin.iOS在将C#编译为本机代码时对内存管理做了什么?

Xamarin.iOS在将C#编译为本机代码时对内存管理做了什么?,第1张

概述什么Xamarin.iOS关于内存管理?使用通常的IL,我们有垃圾收集器,它处理未使用的对象和浮雕程序员调用删除.当Xamarin将代码编译为本机时,这是如何工作的?谁清理了不再使用的物体? 这个问题回答了编译的工作原理,但没有解释内存管理部分:How MonoTouch works? answer you seek是关于您链接的问题. 总而言之,IL-to-native翻译过程是提前完成的,但仍 什么Xamarin.iOS关于内存管理?使用通常的IL,我们有垃圾收集器,它处理未使用的对象和浮雕程序员调用删除.当Xamarin将代码编译为本机时,这是如何工作的?谁清理了不再使用的物体?

这个问题回答了编译的工作原理,但没有解释内存管理部分:How MonoTouch works?

解决方法 answer you seek是关于您链接的问题.

总而言之,IL-to-native翻译过程是提前完成的,但仍然需要Mono运行时的其他部分. JIT编译只是运行时执行的任务之一,而且这个特定的部分与iOS的内存限制不兼容(可写的内存页也不能​​执行,这是JIT运行所必需的).这就是AFAIK,是完全需要提前编译(AOT)的唯一原因.

Mono垃圾收集器确实在iOS上运行,它只是嵌入到Monotouch编译器生成的二进制文件中.生成的二进制文件包含您的AOT编译的应用程序代码以及您使用的库的AOT编译版本,以及Mono运行时的精简版本.

总结

以上是内存溢出为你收集整理的Xamarin.iOS在将C#编译为本机代码时对内存管理做了什么?全部内容,希望文章能够帮你解决Xamarin.iOS在将C#编译为本机代码时对内存管理做了什么?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1109512.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存