首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CGPDFDocumentRelease()使应用程序崩溃,错误地说已经释放

CGPDFDocumentRelease()使应用程序崩溃,错误地说已经释放
EN

Stack Overflow用户
提问于 2010-11-06 01:00:22
回答 1查看 891关注 0票数 0

我正在为iOS编写一个PDF浏览器。当我初始化我的视图控制器时,我获得了一个对pdf的引用,

代码语言:javascript
复制
pdf = CGPDFDocumentCreateWithURL((CFURLRef)pdfURL);

然后我在该类的整个生命周期中使用它来获得CGPDFPageRef的like,

代码语言:javascript
复制
CGPDFPageRef pageRef = CGPDFDocumentGetPage(pdf, docPage);

子视图控制器使用这些页面,并在解除分配时释放它们。但是,当我尝试释放pdf本身(使用CGPDFDocumentRelease)时,我得到以下错误:

代码语言:javascript
复制
[Not A Type release]: message sent to deallocated instance

这是怎么回事?这不是问题,但是我的heapshot分析充斥着CG对象和大量的分配,所有这些似乎都与pdf (单个页面)内容流相关。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-11-06 04:56:29

如果您没有保留pageRef,则不能释放它。即使您保留了它,如果文档本身被释放,它也可能不可用。因此,您可能需要在子视图控制器中保留页面和文档,并相应地释放它们。

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

https://stackoverflow.com/questions/4108183

复制
相关文章

相似问题

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