首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >内存泄漏。我如何着手修复它们呢?

内存泄漏。我如何着手修复它们呢?
EN

Stack Overflow用户
提问于 2013-07-24 20:52:24
回答 3查看 315关注 0票数 0

我得到了几个内存泄漏。所有这些在代码-ASIHTTPRequest中都有最后的位置。早些时候,我认为是ASIhtt库在泄漏内存。然而,它看起来可能只是指向创建对象的位置,而泄漏的原因实际上是代码中的。下面是一个内存泄漏堆栈的示例。我需要知道我应该如何去解决这些问题。我的方法应该是什么。谢谢

代码语言:javascript
复制
   0 CoreFoundation _CFStreamSetClient
   1 CoreFoundation CFReadStreamSetClient
   // Below are Within code
   2 ProductSurvey -[ASIHTTPRequest scheduleReadStream] /Users/Ila/Documents/Developer/Stryker/ProductSurvey/Networking/ASIHTTP/ASIHTTPRequest.m:3716
   3 ProductSurvey -[ASIHTTPRequest startRequest] /Users/Ila/Documents/Developer/Stryker/ProductSurvey/Networking/ASIHTTP/ASIHTTPRequest.m:1382
   4 ProductSurvey -[ASIHTTPRequest main] /Users/Ila/Documents/Developer/Stryker/ProductSurvey/Networking/ASIHTTP/ASIHTTPRequest.m:955
   5 ProductSurvey -[ASIHTTPRequest startSynchronous] /Users/Ila/Documents/Developer/Stryker/ProductSurvey/Networking/ASIHTTP/ASIHTTPRequest.m:802
   6 ProductSurvey -[BaseRequest __processRequest:] /Users/Ila/Documents/Developer/Stryker/ProductSurvey/Networking/WebServices/../BaseRequest.m:73
   7 ProductSurvey -[BaseRequest request] /Users/Ila/Documents/Developer/Stryker/ProductSurvey/Networking/WebServices/../BaseRequest.m:109
   8 ProductSurvey -[EntityRevisionCheckRequest request] /Users/Ila/Documents/Developer/Stryker/ProductSurvey/Networking/WebServices/EntityRevision/EntityRevisionCheckRequest.m:21
   9 ProductSurvey +[NetworkUtility revisionForEntityId:] /Users/Ila/Documents/Developer/Stryker/ProductSurvey/Networking/Utilities/NetworkUtility.m:21
  10 ProductSurvey -[AbstractEntity(Extension) toJSONForUpdate] /Users/Ila/Documents/Developer/Stryker/ProductSurvey/DataPersistance/Categories/AbstractEntity+Extension.m:65
  11 ProductSurvey -[Room(Extension) toJSONForUpdate] /Users/Ila/Documents/Developer/Stryker/ProductSurvey/DataPersistance/Categories/Room+Extension.m:104
  12 ProductSurvey -[RoomService push] /Users/Ila/Documents/Developer/Stryker/ProductSurvey/Syncing/Services/RoomService.m:56
  13 ProductSurvey +[SyncService pushEntityData:] /Users/Ila/Documents/Developer/Stryker/ProductSurvey/Syncing/SyncService.m:84
  14 ProductSurvey +[SyncService pushInOrder:] /Users/Ila/Documents/Developer/Stryker/ProductSurvey/Syncing/SyncService.m:291
  15 ProductSurvey +[SyncService pushAllDirtyChangesToServer] /Users/Ila/Documents/Developer/Stryker/ProductSurvey/Syncing/SyncService.m:69
  16 ProductSurvey +[SyncService push:] /Users/Ila/Documents/Developer/Stryker/ProductSurvey/Syncing/SyncService.m:479
  17 ProductSurvey +[SyncService syncLocalRemoteData] /Users/Ila/Documents/Developer/Stryker/ProductSurvey/Syncing/SyncService.m:220
  18 ProductSurvey -[BGSyncService processSync] /Users/Ila/Documents/Developer/Stryker/ProductSurvey/Syncing/BGSyncService.m:77
  19 Foundation __NSThread__main__
  20 libsystem_c.dylib _pthread_start
  21 libsystem_c.dylib thread_start
EN

回答 3

Stack Overflow用户

发布于 2013-07-24 20:58:35

  1. 启用ARC
  2. 停止使用ASIHTTPRequest。开发人员在网站顶部发布:

请注意,我已经不在这个库上工作了--您可能想要考虑在新项目中使用其他库。

我是认真的!这个库的最后一次更新是在两年多以前!

使用AFNetworking

  1. Start
票数 6
EN

Stack Overflow用户

发布于 2013-07-24 20:54:58

我建议使用Instruments中的Leaks工具。Here is a tutorial帮助您入门。

票数 0
EN

Stack Overflow用户

发布于 2013-07-24 21:08:26

按Xcode分析->产品->分析它将按蓝色指示器显示所有内存泄漏的位置。看到这一点,并尝试删除这些非潜在的泄漏。

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

https://stackoverflow.com/questions/17834600

复制
相关文章

相似问题

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