#include <iostream>
#include <unistd.h>
#include <stdio.h>
#include <signal.h>
using namespace std;
int count = 0;
void alarm2(int signo)
{
cout << count;
}
void alarm1(int signo)
{
signal(SIGALRM, alarm2);
cout << "ctrl+C";
alarm(10);
sleep(10);
}
int main()
{
signal(SIGALRM, alarm1);
alarm(3);
sleep(5);
}
3秒後に「ctrl + C」というメッセージが表示され、別のアラームが10秒間設定されます。その後、 の値を取得する必要がありますcount
。しかし、わずか 10 秒後に実行すると、「ctrl + C」とcount
.