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
AI-powered service management for IT and enterprise teams
Give your IT, operations, and business teams the ability to deliver exceptional services—without the complexity. Maximize operational efficiency with refreshingly simple, AI-powered Freshservice.
Rate This Project
Login To Rate This Project
User Reviews
Be the first to post a review of libcxc!