xamarin.ios – MonoTouch:处理ReceiveMemoryWarning的正确方法

xamarin.ios – MonoTouch:处理ReceiveMemoryWarning的正确方法,第1张

概述我有一个MonoTouch应用程序在野外有时会死于mprotect errno 12 (out of memory),它似乎总是事先得到至少一个ReceiveMemoryWarning通知. 我想知道回应这个问题的正确方法是什么.我的应用程序可以释放两种类型的东西:OpenGL纹理和托管内存. 我对此的疑问是: > OpenGL纹理:删除OpenGL纹理会有帮助吗? >托管内存:我不能直接释放它, 我有一个Monotouch应用程序在野外有时会死于mprotect errno 12 (out of memory),它似乎总是事先得到至少一个ReceiveMemoryWarning通知.

我想知道回应这个问题的正确方法是什么.我的应用程序可以释放两种类型的东西:OpenGL纹理和托管内存.

我对此的疑问是:

> OpenGL纹理:删除OpenGL纹理会有帮助吗?
>托管内存:我不能直接释放它,但我可以将它引用为null.够了吗?
> GC.Collect:我应该在处理程序的末尾调用GC.Collect()吗? GC.Collect会立即执行任何 *** 作,还是为将来安排集合?
>我可以/应该做些什么来回应这个?

解决方法 我在使用OpenGL的应用程序中遇到了一段时间.对我来说,这确实是内存泄漏.

[的Dllimport( “/系统/图书馆/框架/ CoreGraphics.framework / CoreGraphics中”)]
public static extern voID CGDataProvIDerRelease(IntPtr provIDer);

和你打电话后
GL.TexImage2D …..

你需要调用CGDataProvIDerRelease(data.Handle);

既然如此,你可能想看看这个:

http://forums.monotouch.net/yaf_postst1541.aspx

总结

以上是内存溢出为你收集整理的xamarin.ios – MonoTouch:处理ReceiveMemoryWarning的正确方法全部内容,希望文章能够帮你解决xamarin.ios – MonoTouch:处理ReceiveMemoryWarning的正确方法所遇到的程序开发问题。

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

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存