0

我需要编写一组 C++ 函数,它们将保存在一个单独的库文件中,用于记录其他人制作的不同 Linux 应用程序的崩溃日志。此类函数必须安装信号处理程序才能运行。

如果将使用它们的应用程序将安装自己的信号处理程序,我如何确保信号将到达我的记录器功能?

4

1 回答 1

0

您可以在您的库中实现诸如signalsigactionsigprocmask等函数,以便使用它们代替 glibc 中定义的函数,以防止覆盖您的信号处理程序并阻塞您的信号。

应用程序仍然可以通过直接调用相应的系统调用来规避这种情况。

于 2013-08-19T09:15:07.070 回答