core data 添加对象,过度release bug 总结。
现象:
在订阅按钮按下后,发生崩溃,系统给出提示:exc_bad_access。
debug代码,在添加到core data代码行之前和之后,添加断点,debug均能通过。
但是打过订阅方法执行完后报错。
原因分析:
追查添加到core data行中的内容,发现在得到core data对象中,使用了一个方法叫做newSubscribeDataEntity.该方法的作用是从core data中返回一个空的实体(自己理解的),该方法应该是autorelease,但是所在函数名用了new,造成了只有勿以为该方式是new出来的,然后对ta进行了手动的release。造成了exc_bad_access。
"debug代码,在添加到core data代码行之前和之后,添加断点,debug均能通过。" 一开始以为能够通过,所以觉得并不是添加到core data行出现的问题。目前个人觉得造成该原因可能是由于,core data与操作是在其自己独立的线程中完成,并且应该是相对main函数,有一定的延时机制。
解决方法:
1.删除手动release行代码。
2.应该修改newSubscribeDataEntity对象名称。如果不是返回以new、alloc、retain、copy实例化的对象,不要使用这些单词开头的名称。
PS:nszombie 使用 (xcode 4.xx)
edit schema -->run xx.app --> Diagnostics --> Enable Zombie Objects
分享到:
相关推荐
Spring框架还包含了多个模块,如Spring Core Container、Spring MVC、Spring Data、Spring AOP、Spring JDBC等。Spring Core Container是核心模块,包含了DI容器和Bean工厂,它是其他所有模块的基础。Spring MVC是...
Spring 5.1.13.RELEASE是该框架的一个稳定版本,它包含了多项改进和优化,比如对Java 11的支持,提升了性能,修复了已知的bug,增强了对WebSocket和Reactive编程的支持。这些特性使得该版本在企业级应用中更加可靠...
Spring 5.2.11.RELEASE作为稳定版本,修复了大量bug,提升了性能,增强了与Java新特性的兼容性,确保了项目的稳定运行。 二、核心模块解析 1. **Core Container(核心容器)**:包括Spring的核心模块如 Beans、...
首先,Spring Framework的基础架构基于模块化设计,主要分为核心容器(Core Container)、数据访问/集成(Data Access/Integration)、Web、AOP(面向切面编程)、工具(Tools)和测试(Test)等模块。这些模块协同...
- Two 2D Video memory test crash bug workarounds implemented. Crashes in (i) DirectX DirectShow and (ii) ATI atiumdag.dll library. - A hang on startup has been corrected. A 2 minute timeout has been...
《Spring Framework 5.1.20.RELEASE:深度解析与应用实践》 Spring Framework作为Java开发中的核心框架,以其强大的功能和灵活的设计理念,深受广大开发者喜爱。本篇文章将围绕"spring-framework-5.1.20.RELEASE-...
Spring由多个子项目组成,包括Core Container(核心容器)、Data Access/Integration(数据访问/集成)、Web(Web)等。Core Container模块是Spring的基础,主要包括Bean Factory和ApplicationContext,它们负责管理...
《Spring框架5.2.2.RELEASE:深度解析与应用》 Spring框架是Java开发中的一个核心组件,尤其在企业级应用开发中占有举足轻重的地位。Spring 5.2.2.RELEASE版本作为其重要的里程碑,为开发者带来了诸多改进和新特性...
《Spring Framework 4.3.3.RELEASE:深入解析与应用》 Spring Framework,作为Java领域最广泛应用的轻量级框架之一,自诞生以来就以其卓越的灵活性、可扩展性和模块化设计赢得了开发者们的广泛赞誉。本文将针对...
- fixed bug with Unicode in TfrxMemoView appeared in previous release - improved MAPI interface in TfrxExportMail export - fixed some problems with allpication styles XE2/XE3 - improved compatibility ...
它将框架拆分为更小、更专注的模块,如Core Container(核心容器)、Data Access/Integration(数据访问/集成)、Web、AOP(面向切面编程)等。Core Container包括Bean工厂和ApplicationContext,它们是Spring的核心...
RabbitMQ 3.6.12 is a maintenance release. Upgrades and Compatibility See the "Upgrading clusters" section of the documentation for general documentation on upgrades. This release has no other known...
- 0000678: Core bug: Setting Align property at runtime - 0000677: Hiding or showing controls doesn't apply alignment/anchoring correctly - 0000675: Setting position of a UniTrackbar at run time - ...
Unifier 20.12 - 21.12 Release Feature Overview Feature Release Bluebeam Integration Business Processes and the Document Manager can now integrate with the Bluebeam document review and markup platform...
在5.0.4.RELEASE版本中,Spring框架可能包含了对性能的优化、bug修复、新特性的引入以及对Java最新版本的支持。例如,它可能增强了对Java 9和10的支持,提高了与Spring Boot 2.0的兼容性,以及在AOP、Web MVC和数据...
在`.zip`文件中,`CHANGES`和`Release Notes.txt`文件包含了驱动程序的版本历史和更新内容,这对于跟踪新功能和修复的bug非常有用。`COPYING`和`EXCEPTIONS`文件涉及版权信息和许可条款,确保合法使用。`README`文件...
Ports is the collection of meta-data that is needed to make software packages build correctly on FreeBSD. An example of a port is the port for the web-browser Mozilla. It contains information about ...
* fixed: audio delay was incorrect when 1st m2ts part contained no audio data * fixed: very small WAV files were not detected correctly * fixed: "eac3to source.eac3 dest.dts -core" crashed v3.12 * ...
* Core End-Of-Line style is LF, defaults CR-LF, LF and CR for Windows, Linux, Mac respectively ! Fixed EOL bug in source (thx Christian) * TsdChardata.GetCoreValue and .GetPlatformValue Version 4.02...
8. Core Release History 9. Legal Disclaimer ================================================================================ 1. INTRODUCTION For the most recent updates to the IP installation ...