там явно посылается сигнал в канал
ну все равно не совсем понятно, как той штукой пользоватся, если сигнал может прийти, а может и нет, хм?
Для таких случаев вроде как select используют, точнее его дефолтный кейс, когда ни один из каналов не принял сигнала
а что это значит?(
https://go.dev/tour/concurrency/5
select { case c<-sigs: handleSignal(c) case WTF?: normal_flow() } а что здесь во втором кейсе нужно написать, хм?
А что непонятного? Во втором кейсе может быть иное событие с иного канала или как в примере выше это канала quit который обрывает работу функции
void signalHandler( int signum ) { cout << "Interrupt signal (" << signum << ") received.\n"; ... exit(signum); } int main () { signal(SIGINT, signalHandler); do_some_work(); }
ну других событий нету - есть только флов программы и мне нужно добавить обработчик сигналов. Можно как-то это сделать, как в С++ примере выше?
Обсуждают сегодня