The main purpose of this library is to provide uniform interface for seamless handling of signals and exceptions.
This project is focused on simplicity and flexibility - it does not even try to mimic C++ exceptions system - instead, it offers only few simple functions and macros which can be easily combined with custom user code to tune the functionality for particular use cases.
Features
- separate, mprotect()-ed, per-thread stacks for signal handlers.
- separate, mprotect()-ed, per-thread stacks for exceptions data.
- no dynamic heap allocations (excluding initialization).
- nested exceptions (including CATCH section).
- support for separate signal handlers per each exception' nesting level.
- support for POSIX real-time signals.
- automatic thread crash detection.
- restartable TRY section.
- exceptions stack backtracing.
- manpage included.
- tests included.
License
GNU Library or Lesser General Public License version 3.0 (LGPLv3)Follow libcxc
Other Useful Business Software
MongoDB Atlas runs apps anywhere
MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
Rate This Project
Login To Rate This Project
User Reviews
Be the first to post a review of libcxc!