专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Solaris

用mkdir实现互斥操作可行吗?解决思路

发布时间:2011-06-27 19:16:06 文章来源:www.iduyao.cn 采编人员:星星草
用mkdir实现互斥操作可行吗?
看到一些资料说,unix下面的mkdir是原子的,也就是互斥的。
所以想用这个命令来解决shell程序的多次启动问题。
具体思路如下,

mkdir /home/test/temp
if[ $? -gt 0 ]; then
成功
else
已经启动了失败
fi

如果同时启动shell程序,只有一个能mkdir成功
这种思路有什么问题吗?多谢大家探讨啊。


------解决方案--------------------
不确定mkdir是原子的
从网上搜了下
http://bbs.chinaunix.net/archiver/tid-690239-page-4.html
------解决方案--------------------
trap "rmdir /tmp/lock" 0
方便一些吧,后续shell可以随时终止
而不需要在每个exit之前,都显式调用一下rmdir
------解决方案--------------------
flock锁是基于文件的,会随进程的终止而自动释放
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: