On May 20, 2009, at 6:01 AM, Ken Thomases wrote:
It's possible for a category to provide ivar-like functionality.
You can maintain a "category variable" in the same manner as one
implements a "class variable" in Objective-C: a file-scope static in
the implementation file. That variable could be a mapping from A
instance pointers to a value (or dictionary of values).
It's non-trivial, though. You have to take care of thread safety in
maintaining the mapping.
It's also much harder under GC. The "obvious" solutions either leak
(because the global table keeps stuff alive), or are thread-unsafe
(because no amount of locks can save your dangling pointer if the
collector decides to delete the object).
SnowLeopard adds machinery that can be used to do exactly this. Stay
tuned.
--
Greg Parker gpar...@apple.com Runtime Wrangler
_______________________________________________
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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com
This email sent to arch...@mail-archive.com