ceph-bench/mysignals.cpp

22 lines
367 B
C++
Raw Normal View History

2019-01-20 15:35:09 +03:00
#include "mysignals.h"
2022-01-18 01:13:03 +03:00
#include <csignal>
2019-01-20 15:35:09 +03:00
static volatile std::sig_atomic_t gSignalStatus;
2022-01-18 01:13:03 +03:00
static void signal_handler(int signal)
{
gSignalStatus = signal;
}
2019-01-20 15:35:09 +03:00
2022-01-18 01:13:03 +03:00
void setup_signal_handlers()
{
std::signal(SIGINT, signal_handler);
std::signal(SIGTERM, signal_handler);
2019-01-20 15:35:09 +03:00
}
2022-01-18 01:13:03 +03:00
void abort_if_signalled()
{
if (gSignalStatus)
throw AbortException();
2019-01-20 15:35:09 +03:00
}