我编写了一个程序来在 LINUX 中使用timer_create
和timer_settime
.
如果我在删除和停止此计时器之前终止进程会发生什么?即使从 main 中退出,计时器也会保持活动状态。
如果是,我如何检查在杀死主后是否有任何此类计时器仍在运行?
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
查询内核有关计时器的信息。
管理进程特定资源(如文件描述符、地址空间、计时器等)是内核的责任。相信内核,它会适当地释放这些资源,如fork(2)和execve(2)手册页中所述。