Hi,

Riccardo Mottola wrote:
"An |NSThread| object posts this notification when it receives the |exit <https://developer.apple.com/library/IOs/documentation/Cocoa/Reference/Foundation/Classes/NSThread_Class/index.html#//apple_ref/occ/clm/NSThread/exit>| message, before the thread exits. Observer methods invoked to receive this notification execute in the exiting thread, before it exits."

so, well, it exited! This confuses me: it exits and does not release, but i can't release it afterwards. A call to detachNewThreadSelector may involve oneway methods, thus asynchornous stuff, it is not that I can just put a release at the end (which end?)
actually, i correct myself: since it is "before exit":

This method uses the currentThread class method to access the current thread. Before exiting the thread, this method posts the NSThreadWillExitNotification with the thread being exited to the default notification center. Because notifications are delivered synchronously, all observers of NSThreadWillExitNotification are guaranteed to receive the notification before the thread exits.

I am guaranteed to get the notification before the end.

Right now, if I try to print out the executor with " NSLog(@"executor %@, ", executor);" when I get the notification I get:

2014-10-21 13:20:45.340 GWorkspace[27019] Problem posting notification: <NSException: 0x850cf230> NAME:NSObjectInaccessibleException REASON:Forwarding message for 0x850c9e50 in wrong thread - <GSFFIInvocation 0x7f3d6610 selector: methodSignatureForSelector: target: NSDistantObject> INFO:(null)

I suppose this means the remote object is already dead or somehow dealloc'ed, even if i didn't see a dealloc.

Riccardo

_______________________________________________
Discuss-gnustep mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/discuss-gnustep

Reply via email to