Linux操作系统 sem_destroy() 文件上说:
sem_destroy()
未命名的信号量应该用 在它所在的记忆之前 已分配已取消分配。如果不这样做,可能会导致某些实现上的资源泄漏。
sem\u销毁() 到 atexit() ,在中止或 SIGKILL . 我有一个进程负责创建和销毁共享内存(mmaped文件)上的信号量,如何避免异常终止条件下的资源泄漏?
sem\u销毁()
atexit()
SIGKILL
在Linux上,如果在 是否有任何资源泄露?什么资源?
glibc实现 sem_destroy 什么都不做,这不会改变。如果您使用glibc,就不必为释放资源做任何事情。此外,内核无论如何都会在进程终止时释放这些资源。
sem_destroy
futexes ,这就是为什么除了用来存储信号量的内存之外,它不需要任何额外的资源。