Sorry I didn’t reply sooner. I was notified of your earlier posts )-: [quote='850943022, SilverFruity, /thread/794589?answerId=850943022#850943022, /profile/SilverFruity'] calling raise to throw SIGABRT does not block the thread under GCD. [/quote] By “under GCD” I presume you mean “when using a Dispatch signal event source to handle the signal”. If so, then, yes, that’s expected. Dispatch signal event sources are very much like kqueues, in that they are delivered asynchronously. Thus if you raise a signal by calling raise (or kill with your own pid) then the thread calling raise may well return before the signal is delivered to the queue. If you’re building your own crash reporter — which, as I noted above, is something I specifically discourage — and you choose to implement in-process crash reporting via signals — again, not something I recommend — then you have to use a signal handler rather than a Dispatch signal event source. [quote='851087022, SilverFruity, /thread/794589?answerId=851087022#851087022, /
Topic:
App & System Services
SubTopic:
Processes & Concurrency
Tags: