On Tue, Oct 28, 2008 at 11:30 AM, Jerry Krinock <[EMAIL PROTECTED]> wrote: > Although the documentation on message forwarding [1] explains that alot of > stuff needs to happen, it does not say "Warning: Don't do this in > performance-critical applications".
Such a warning would be foolish, since that isn't true in the general case. There are plenty of operations which take *vastly* longer than message forwarding which don't come with that warning either. > So I made a test tool which forwarded a > simple message with one integer argument to a class which would add it to > its 'sum', an instance variable. > > Sending this message 10,000 times and comparing the difference in elapsed > time with a similar task that sends a similar message directly, I found that > the average overhead for forwarding one message on my Intel Core 2 Duo Mac > Mini was about 20 microseconds. > > That would be unacceptably slow for an iterated operation in a my > application, and I decided to not use message forwarding in this particular > case. > > Has anyone ever seen better performance for message forwarding? If 20us is too long for you (is it really? do you need to do this more than 50,000 times per second?) and you can require 10.5 and you just need strict forwarding of the identical message to another object (as opposed to intercepting the message and doing more clever processing), then the -forwardingTargetForSelector: method is likely to give you considerably better performance. Mike _______________________________________________ Cocoa-dev mailing list ([email protected]) 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 [EMAIL PROTECTED]
