Hi,
I have a background thread which needs the main thread to create an object
(because part of the initializer isn't thread safe).
The performSelector: methods don't expose the return value of the message, even
with waitUntilDone:YES. I'm not happy with my workaround, which is to use an
instance variable:
@interface MyClass : NSObject {
id tmpObj;
}
@end
@implementation MyClass
- (void)foobar
{
[self performSelectorOnMainThread:@selector(createMyObj) withObject:nil
waitUntilDone:YES];
id myObj = tmpObj;
[tmpObj autorelease];
tmpObj = nil;
// do stuff with myObj
}
- (void)createMyObj
{
tmpObj = // create object
[tmpObj retain]; // retain object, so it doesn't get auto-released
}
@end
Has anyone else got a cleaner technique? Perhaps provide an NSMutableDictionary
to withObject: ?
- Abhi
- - -
Kind Regards,
Abhi Beckert
Senior Programmer
Precedence - Websites. Hosting. Marketing.
1300 363 160
http://precedence.com.au
_______________________________________________
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]