And that bit of code is basically the bulk of the implementation of -[NSObject dealloc]. In other words, the associated objects are more or less released just before your "owner" object is deallocated, so the only things that you should hope functional on those objects are the features NSObject provides.

Fortunately, KVO and NotificationCenter both allow you to deregister by saying your "name (read address)" and being an NSObject, so I would expect everything to be just fine.