Обработка сигнала ASIO в рамках многопоточных сценариевC++

Программы на C++. Форум разработчиков
Anonymous
Обработка сигнала ASIO в рамках многопоточных сценариев

Сообщение Anonymous »

В процессе многопоточного процесса Linux OS сигнал не гарантированно доставить в конкретный поток. Является ли эта асинхронная операция гарантированно завершена?
Тест ниже показывает, что оба потока получают один и тот же сигнал.
Так что ответ на последний вопрос может быть да. /> Я не могу найти документы, описывая это поведение < /p>
#include
#include

namespace asio = boost::asio;
using error_code = boost::system::error_code;

class SignalHandler {
public:
SignalHandler(asio::io_context& io_context) : signals_(io_context, SIGINT, SIGTERM) { start_wait(); }

private:
void start_wait() {
signals_.async_wait([this](error_code ec, int signal_number) {
std::cout

Подробнее здесь: https://stackoverflow.com/questions/797 ... -scenarios

Вернуться в «C++»