现在的位置: 首页 > 综合 > 正文

利用劝告锁实现程序只运行一次

2013年10月02日 ⁄ 综合 ⁄ 共 1538字 ⁄ 字号 评论关闭

1.  由于需要,一个业务程序一天之中可能要被多次使用,但同一时间只能有一个人使用,于是我们得想个办法保证互斥。

     进程间通信有很多种方式,信号量就不错。但学习使用下文件锁,更简洁一点。

 

2. 文件系统级别的锁有四种,最基本的两种是劝告锁和强制锁,剩下的两种是强制锁的变种。

     应用级别上对锁的操作有两种,加读锁,或者加写锁(又叫共享锁与独占锁)。

     那么,平时所说的加锁,实际上应该是在劝告锁或者强制锁上加读或者写锁。

 

3. 基本思路是,程序每次运行就打开一个固定的文件,试图加上写锁(独占性),如果之前已经有进程运行了,那么加锁操作就会失败,程序

    退出,否则程序运行,直到结束(正常结束或者异常退出)都不会有其它进程运行起来。

 

4. 代码如下:

 

 

抱歉!评论已关闭.