311
312
313
314
315
316
317
318
319
320
321
322
323
324
|
OF_UNREACHABLE
}
+ (void)terminateWithObject: (id)object
{
OFThread *thread = of_tlskey_get(threadSelfKey);
OF_ENSURE(thread != nil);
thread->_returnValue = [object retain];
longjmp(thread->_exitEnv, 1);
OF_UNREACHABLE
}
|
>
>
>
|
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
|
OF_UNREACHABLE
}
+ (void)terminateWithObject: (id)object
{
OFThread *thread = of_tlskey_get(threadSelfKey);
if (thread == mainThread)
@throw [OFInvalidArgumentException exception];
OF_ENSURE(thread != nil);
thread->_returnValue = [object retain];
longjmp(thread->_exitEnv, 1);
OF_UNREACHABLE
}
|