首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >完全释放CTFont对象?

完全释放CTFont对象?
EN

Stack Overflow用户
提问于 2010-08-11 15:16:29
回答 2查看 2.1K关注 0票数 1

每当我第一次创建一个CTFont对象时,它就消耗了大约10 MB的实际内存。

代码语言:javascript
复制
 CTFontRef font = CTFontCreateWithName(CFSTR("Helvetica"), fontSize, NULL);
 CFRelease(font);

调用CFRelease之后,内存消耗不会改变,因此我假设构建和存储了某种字体缓存。我怎样才能让它消耗更少的内存?

我很担心,因为我的应用程序的其余部分只重2MB,产生文本输出的一点点占用了5倍的时间。不,我不能使用其他文本输出方法。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-10-06 17:53:45

我觉得你不应该为这个问题操心。打电话给CFRelease是非常好的,也是关于你能做什么的。10 is不算太多。如果您有这个问题,可能所有的CoreText应用程序都有问题。您可以为其设置一个bug,并查看它们的响应。也许它会加载整个字体数据库,然后缓存到某个地方以获得更好的性能。我觉得你没什么办法。如果您想知道更多的细节,请提交一个bug。

票数 1
EN

Stack Overflow用户

发布于 2011-06-14 11:13:40

如果你需要缓存一个字体,把它放在字典中,以字号作为键。

票数 -3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3459906

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档