It is common for deallocating objects to abort if they have observers still registered.
However in some cases it seems that an object can get deallocated with observers attached and not abort. I have instrumented my test case thoroughly and overridden -setObservationInfo: to log the observation changes as below. The Data_Test object is deallocated with non nil -observationInfo and yet it does not abort. Why does this occur? I am sorting through some observer related crash reports just trying to figure out possible causes. The Data_Test object is heavily observed throughout its lifetime both by bindings and explicit observations. macOS 10.12 2017-05-31 22:49:01.616632+0100 MyApp Data_Test (0x11336d100) SetObservationInfo 2017-05-31 22:49:01.616656+0100 MyApp oldObservationInfo : <NSKeyValueObservationInfo 0x600002a31b80> ( <NSKeyValueObservance 0x608000c53f20: Observer: 0x117411da0, Key path: name, Options: <New: NO, Old: NO, Prior: NO> Context: 0x10075a4b8, Property: 0x61000044abc0> <NSKeyValueObservance 0x60000064ec10: Observer: 0x600000241500, Key path: aeIsPostponementLetterFlagEnabled, Options: <New: NO, Old: NO, Prior: NO> Context: 0x0, Property: 0x608000a51280> ) 2017-05-31 22:49:01.616692+0100 MyApp newObservationInfo : <NSKeyValueObservationInfo 0x600002a31cc0> ( <NSKeyValueObservance 0x608000c53f20: Observer: 0x117411da0, Key path: name, Options: <New: NO, Old: NO, Prior: NO> Context: 0x10075a4b8, Property: 0x61000044abc0> ) 2017-05-31 22:49:04.188226+0100 MyApp Data_Test (0x11336d100) dealloc Thanks Jonathan _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com