建议性锁和强制性锁的区别
来源:互联网 发布:广西广电网络三网融合 编辑:程序博客网 时间:2024/04/28 08:23
建议性锁:
所谓建议性锁就是假定人们都会遵守某些规则去干一件事。例如,人与车看到红灯都会停,而看到绿灯才会继续走,我们可以称红绿等为建议锁。但这只是一种规则而已,你并不防止某些人强闯红灯。而强制性锁是你想闯红灯也闯不了。
建议性锁只在cooperating processes之间才有用,对cooperating process的理解是最重要的,它指的是会影响其它进程的进程或被别的进程所影响的进程,举两个例子:(1)我们可以同时在两个窗口中运行同一个命令,对同一个文件进行操作,那么这两个进程就是cooperating processes;(2)cat file| sort,那么cat和sort产生的进程就是使用了pipe的cooperating processes。
强制性锁:
强制性锁是由内核执行的。当文件被上锁来进行写入操作时,在锁定该文件的进程释放该锁之前,内核会阻止任何对该文件的读或写访问,每次读或写访问都得检查锁是否存在。
1.如果想要打开一个有强制性记录锁的文件,而且open函数中指定了O_TRUNC时,即便没有指定O_NONBLOCK,open调用也会立即出错返回,errno置为EAGAIN。
2.强制性锁可以避开。但意义不大,原理是创建个新文件,并删除(unlink不受强制性影响)原有的文件。
3.强制性锁虽然解决非协作进程来捣乱的问题,但是,对于多个进程更新共享文件时,对共享数据仍需要某种锁。
0 0
- 建议性锁和强制性锁的区别
- 强制性锁和建议性锁的区别
- 建议性锁和强制性锁
- 建议性锁和强制性锁
- 建议性锁和强制性锁
- 强制性锁和建议性锁
- 建议性锁和强制性锁
- 110-建议性锁和强制性锁
- 建议性锁和强制性锁机制下的锁
- 建议性锁和强制性锁机制下的锁
- 文件的建议性锁和强制性锁
- 强制性锁建议性锁
- 强制性锁建议性锁
- 强制性锁建议性锁 .
- 强制性锁建议性锁
- 强制性锁建议性锁 .
- 强制性锁建议性锁 .
- 强制性锁建议性锁
- python统计代码函数
- 0代码、不编程—交互式网页设计工具VXPLO
- strcpy、strncpy与memcpy的区别与使用方法
- 禁用JavaScript控制台调试
- Warning: Using a password on the command line interface can be insecure .ERROR 1045 (28000): Access
- 建议性锁和强制性锁的区别
- No.1 --> Object类
- C++11新标准之二:初始化列表
- spring ehcache small instance
- strlen(C语言函数)
- 数据库迁移之从oracle 到 MySQL
- 25个必须记住的SSH命令
- SqlServer安装出错解决办法
- Myeclipse8.5破解方法