位置: 编程技术 - 正文

linux 新手教程之创建锁文件的方法(linux简明教程)

编辑:rootadmin
一、概述 Linux提供了多种特性来实现文件锁定。其中最简单的方法就是以原子操作的方式创建锁文件,所谓“原子操作”就是在创建锁文件时,系统将不允许任何其它的事情发生。这就给程序提供了一种确保它所创建的文件是唯一性的方式,且该文件不可能被其它程序在同一时刻创建。 二、方法 锁文件仅仅是充当一个指示器的角色,程序间需要通过相互协作来使用它们。锁文件只是建议性锁,与此对立的是强制性锁。 为创建一个用作指示器的文件,我们使用带O_CREATE和O_EXCL标志的open系统调用。这将使我们以一个原子操作同时完成两项工作:确定文件不存在,然后创建它。 三、实现 复制代码代码如下: //file : lock.c #i nclude <unistd.h> #i nclude <stdlib.h> #i nclude <stdio.h> #i nclude <fcntl.h> #i nclude <errno.h> int main() { int file_desc; int save_errno; file_desc = open("/tmp/LockFile.test", O_RDWR | O_CREAT | O_EXCL, ); if (file_desc < 0) { save_errno = errno; printf("Open failed with error is %dn", save_errno); } else { printf("Open succeededn"); } exit(EXIT_SUCCESS); } 第一次运行程序: $ lock 输出如下: Open succeeded 我们再次运行程序: $ lock 输出如下: Open failed with error is 分析: 第一次运行程序时,由于文件并不存在,所以执行成功。对于后续的执行,因为文件已经存在而失败了。若想程序再次执行成功,必须删除锁文件。 在Linux系统中,通常错误号码代表的是EEXIST,此错误用以表示一个文件已存在。错误号定义在头文件errno.h或(更常见的)它所包含的头文件中。

推荐整理分享linux 新手教程之创建锁文件的方法(linux简明教程),希望有所帮助,仅作参考,欢迎阅读内容。

linux 新手教程之创建锁文件的方法(linux简明教程)

文章相关热门搜索词:linux新手入门,linux的快速入门,linux入门基础教程,linux详细教程,linux入门基础教程,linux 初学,linux新手知识,linux新手知识,内容如对您有帮助,希望把文章链接给更多的朋友!

光驱的软开关与限速简介 一、光驱的软开关:eject-rcdrom,弹开指定光驱设备的仓门,如只有一个光驱,直接用eject就可,如有两个光驱设备根据/dev/下设备文件来指定设备,如我

配置Linux 保证其系统的安全 众所周知,网络安全是一个非常重要的课题,而服务器是网络安全中最关键的环节。Linux被认为是一个比较安全的Internet服务器,作为一种开放源代码操

黑客怎样入侵Linux系统 我发现了一个网站,于是常规入侵。很好,它的FINGER开着,于是我编了一个SHELL,aaa帐号试到zzz(bytheway,这是我发现的一个网上规律,那就是帐号的长度

标签: linux简明教程

本文链接地址:https://www.jiuchutong.com/biancheng/365515.html 转载请保留说明!

上一篇:Wine 中文存在很多的乱码怎么解决方法(winedt中文界面)

下一篇:光驱的软开关与限速简介(开关光驱是平移还是旋转)

  • 领用工程物资的账务处理
  • 非营利组织企业所得税
  • 增值税和附加税一共几个点
  • 收到增值税发票怎么认证
  • 企业所得税计提表模板
  • 韩国购物小票怎么看图解
  • 资产报废变现收入应开具哪种发票
  • 利息收入可以作为业务招待费的基数吗
  • 事业单位服务收入包括
  • 购置税交了发票能作废吗
  • 给非公司员工开工作证明办房贷
  • 业务宣传及广告费超比例
  • 材料成本差异分配率
  • 纳税总额包括代扣代缴个人所得税吗
  • 住宿费餐费怎么做分录
  • 日用品发票能报销吗
  • 企业购买房产贷款
  • 建筑安装业跨省经营管理税务通知
  • 资本公积转增的股票可以转让吗
  • 增值税附加税包含哪些税
  • 可抵扣亏损递延所得税资产
  • 企业银行基本户
  • 电子发票怎么打成A4纸一半
  • 申报印花税填表过程
  • 水利建设基金多交可以退么
  • 基本户和一般户的区别和用途
  • mac 应用
  • 应付账款暂估款的会计分录
  • 培训机构开办资金
  • 鸿蒙系统怎么关闭负一屏
  • 行政单位如何将资产年报导入财报里
  • php字符串操作函数
  • 在申报季度企业所得税时,残疾人工资可以加计扣除吗
  • 员工的通讯费怎么报销
  • 如何设置长期有效的群二维码安卓手机
  • 滴滴发票开公司名称可以抵扣进项吗
  • php判断语句
  • php实现定时自动刷新
  • 简易征收税率表
  • 发票开具的常见错误以及盖章问题
  • python sockets
  • 代扣代缴个人所得税奖励金
  • 当月没有发放工资是不是就不用申报个税
  • 如果删除申报记录会怎么样
  • 个体工商户如何用工
  • 小规模开工程款几个点
  • 金税四期怎么监管消费和发票
  • 利息收入是一级科目还是
  • 转让旧固定资产怎么处理
  • 固定资产如何计提折旧
  • 委托生产的会计分录
  • 冲减实收资本是什么意思
  • 发行价格另支付发行费用
  • 增值税免抵退税和免退税的区别有什么?
  • 销售成本包括销项税额吗
  • 小规模纳税人计算公式
  • 结转本月销售材料成本
  • 劳动纠纷给员工的建议
  • 什么叫建账
  • mysql自动停止的解决办法
  • sql中nullif
  • mysql一闪而退
  • linux lv扩容
  • 更新版本
  • OpenSolaris 6/06 DVD版本
  • 电脑及网络维护
  • win1020h2累积更新
  • windows7修改注册表
  • css实战手册
  • python静态变量和静态方法
  • 个人简历
  • python中随机数的用法
  • fullpage.js教程
  • js动态生成的id怎样获取
  • python日志管理系统
  • unity获取鼠标
  • 常见的java数据类型有哪些
  • android多语言失效
  • 纳税信用评级b是多少分
  • 国税申报时间2023年10月
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设