【发布时间】:2015-03-19 08:30:20
【问题描述】:
我正在实现一个使用线程的程序。我希望每个创建的线程都延迟一段时间。然后向线程发送一个信号,处理程序应该打印一条消息。我的问题是向线程发送信号。怎么可能向每个创建的线程发送警报信号?
我可以使用pthread_kill(),但是如何指定时间,如alarm(6) 之类的?
void *thread(void *parameter)
{
//How to send a signal to a thread
}
void threadHandler(int sig)
{
printf("hello from thread\n");
}
【问题讨论】:
-
为什么不让主线程处理信号并向线程广播条件?
-
因为每个线程会有不同的延迟。
-
@user4546686:您这样做只是为了学习还是尝试解决特定问题?我可以发布一种我认为至少可以在 Linux 上运行的方法,但根据您的操作,可能会有更好的方法。
-
仅供学习使用