我从主线程中生成了多个线程。所有这些线程都具有相同的启动例程。该例程包含一个例程的本地计数器。我想定期打印这个计数器。我如何实现这一目标?
我知道我们可以使用条件变量进行不同线程之间的通信。但是我不想阻止任何线程并让它们等待特定的信号,简而言之,计数器必须不断更新。
总结这是我想要实现的目标:
多个线程正在不断更新自己的计数器。
SIGALRM已注册,并定期告知每个线程打印其计数器
答案 0 :(得分:2)
只使用全局变量作为SIGALRM的计数器,在处理程序中更新,然后在例程中检查全局计数器值是否更改,打印本地计数器并将全局计数器的值保存到局部变量