This is the mail archive of the libc-help@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: call a function even a program terminate abnormally


Be aware that SIGKILL cannot be caught...

Another idea would be to have a monitoring process which spawns your program, monitors it and does cleanup once it dies.

Patrick



Von meinem iPhone gesendet
> Am 05.08.2017 um 11:31 schrieb Marcin Mielniczuk <marmistrz.dev@zoho.eu>:
> 
> I guess you'd have to install handlers for every possible signal. Your program can receive SIGTERM, SIGKILL, ...
> 
>> On August 5, 2017 11:29:51 AM GMT+02:00, Patrick Schlangen <patrick@schlangen.me> wrote:
>> Hi Yubin,
>> 
>>> I am wondering whether it is possible to invoke a function when a
>> program
>>> terminate abnormally (e.g., segfault).
>> 
>> you could install a signal handler for SIGSEGV using signal() (2),
>> but please be aware of all the pitfalls.
>> 
>> When your process receives SIGSEGV, you probably have some
>> memory corruption ongoing and you don't know if the data structure
>> holding your lock is still valid.
>> 
>> Best Regards,
>> 
>> Patrick
> 
> -- 
> Sent from my Android device with K-9 Mail. Please excuse my brevity.
> 
> 




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]