Umm, as I mentioned, I have stripped back the multithreading part to virtually nothing and taken that code to a test application and it works there, and the rest of the application is 23,000 lines of code, which I can't post.
In my main application, the following still fails (workerThread is an instance variable): - (void)execute:(AADataForLayoutProcess *)data { [self cancel]; self.currentDataForLayout = data; workerThread = [[NSThread alloc] initWithTarget:self selector:@selector(doLayout:) object:self.currentDataForLayout]; [workerThread start]; } - (void)cancel { [workerThread cancel]; [workerThread release]; workerThread = nil; } - (void)doLayout:(id)data { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; [self innerExecute:(AADataForLayoutProcess *)data]; [pool release]; } - (void)innerExecute:(AADataForLayoutProcess *)data { [self performSelectorOnMainThread:@selector(callback) withObject:nil waitUntilDone:NO]; } - (void)callback { NSLog(@"Called back from thread"); } At this stage, I'm pretty sure that something other than this code is causing the issue, but have no clue where to look. Regards Gideon On 08/12/2010, at 11:29 AM, Dave Keck wrote: >> Any ideas? > > Post your code! _______________________________________________ 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