【发布时间】:2016-04-14 17:12:22
【问题描述】:
我有一个程序,它使用我正在处理的shm_open 创建一个共享内存对象。它尝试使用shm_unlink 释放对象,但有时编程错误会导致它在调用之前崩溃。在这种情况下,我需要“手动”取消链接共享内存对象,并且我希望能够在普通 shell 中完成此操作,而无需编写任何 C 代码——即使用普通 Linux 实用程序。
可以吗? This question 似乎说在/dev/shm/path_passed_to_shm_open 上使用unlink(1),但手册页不清楚。
【问题讨论】:
-
尝试 unix.stackexchange.com 或 superuser.com 解决非编程问题。
-
@Barmar 在我看来,这与我链接的问题非常相似。它可以改写为“可以通过取消链接
/dev/shm/中的相应文件来删除通过shm_open创建的共享内存对象吗?”但我认为这是一个非常小的区别。我不认为这个问题不再与编程相关,因为我宁愿重用现有的 *nix 工具而不是重新发明轮子。我认为投票接近的理由不合适,因为shm_open绝对是“主要用于编程”,而不是“通用计算工具”。
标签: linux bash shell shared-memory