Why can't malloc be used in signal handlers? What can "happen wrong"?
A signal handler can be called at any time, including during times when another call to malloc
is in progress. If this happens, one of two things will occur:
malloc
will be unable to acquire the heap lock.malloc
does acquire the lock (or doesn't think it needs it), then proceeds to render the heap inconsistent, leading to a later crash.If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With