一个进程中有两个线程(父线程和子线程,都在自己的无限循环中运行)。父线程只做一项工作,即while(1)
每天不断地()检查系统时间是否为00:00,更改文件名。因此,对于每次检查,我都设置了 60 秒的睡眠时间,以最大限度地减少线程对 CPU 的使用。
并且子线程有自己的计时器警报(独立于父线程)和计时器信号处理程序(警报设置在10秒内,因此当父线程休眠60秒时可能有很多计时器信号)。
现在我面临的问题是父线程没有休眠 60 秒,因为我观察到它休眠了不到 10 秒,并且在一分钟内多次检查系统时间。
造成这种情况的原因是什么?和如何解决?
谢谢。