我编写了一个程序,使用timer_create
和timer_settime
在LINUX中安排定期计时器。
如果我在删除和停止此计时器之前终止进程会怎样?定时器是否会在退出主机后保持活动状态。
如果是,我如何在杀死主要文件后检查是否有任何此类计时器仍在运行?
答案 0 :(得分:0)
timer_create(2)的手册页说:
Timers are not inherited by the child of a fork(2), and are disarmed and
deleted during an execve(2).
因此,在创建进程退出或终止(例如被杀)后,您不应该对计时器感到烦恼。
在Linux上,您可以解析/proc/timer_list
和/proc/timer_stats
以查询内核有关计时器的信息。
管理process特定资源(如文件描述符,地址空间,计时器等)是内核的责任。相信内核,它将适当地释放这些资源,如fork(2)和execve(2)手册页中所述。
详细了解linux kernel角色和system calls。