位置: 编程技术 - 正文

python daemon守护进程实现(python守护线程与非守护线程)

编辑:rootadmin

推荐整理分享python daemon守护进程实现(python守护线程与非守护线程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python 守护进程模块,python守护进程作用,python daemon模块,python daemon模块,python守护进程作用,python守护进程作用,python进程守护,python守护进程作用,内容如对您有帮助,希望把文章链接给更多的朋友!

假如写一段服务端程序,如果ctrl+c退出或者关闭终端,那么服务端程序就会退出,于是就想着让这个程序成为守护进程,像httpd一样,一直在后端运行,不会受终端影响。守护进程英文为daemon,像httpd,mysqld,最后一个字母d其实就是表示daemon的意思。

守护进程的编写步骤:

1、fork子进程,然后父进程退出,此时子进程会被init进程接管。2、修改子进程的工作目录,创建新进程组合新会话,修改umask。3、子进程再次fork一个进程,这个进程可以称为孙子进程,然后子进程退出。4、重定向孙子进程的标准输入流,标准输出流,标准错误到/dev/null完成上面的4个步骤,那么最终的孙子进程就称为守护进程,先看下代码,后面分析下步骤的原因。

python daemon守护进程实现(python守护线程与非守护线程)

1、fork子进程,父进程退出通常,我们执行服务端程序的时候都会通过终端连接到服务器,成功连接后会加载shell环境,终端盒shell都是进程,shell进程是终端进程的子进程,通过ps命令可以很容易的查看到,在这个shell环境下一开始执行的程序都是shell进程的子进程,自然会受到shell进程的影响,在程序里fork子进程后,父进程退出,对于shell进程来说,这个父进程就算执行完毕,而产生的子进程会被init进程接管,从而也就脱离了终端控制。2.修改子进程的工作目录子进程在创建的时候会继承父进程的工作目录,如果执行的程序是在U盘里面,就会导致U盘不能卸载。3.创建新会话使用setsid后,子进程就会成为新会话的首进程,子进程会成为新进程组的组长进程,子进程没有控制终端。4.修改umask由于umask会屏蔽权限,所有设定为0,这样可以避免读写文件时碰到权限问题5.fork孙子进程,子进程退出经过上面几个步骤后,子进程会成为新的进程组老大,可以重新申请打开终端,为了避免这个问题,fork孙子进程处理,6.重定向孙子进程的标准输入流,标准输出流,标准错误流到/dev/null因为是守护进程,本身已经脱离了终端,那么标准输入流,标准输入流,标准错误流就没有什么意义了,所以都转向到/dev/null,就是丢弃的意思

我们来运行一个这个程序,看看效果

从上图可以看出这个脚本程序已经放入后台,只能使用killall方式来结束掉,接下来我们去看下记录的日志

python使用电子邮件模块smtplib的方法 Smptp类定义:smtplib.SMTP(host[,port[,local_hostname[,,timeout]]]),作为SMTP的构造函数,功能是与smtp服务器建立连接,在连接成功后,就可以向服务器发送相关请求,

python 简单的多线程链接实现代码 服务端:#!/usr/bin/envimportSocketServerclassmyMonitorHandler(SocketServer.BaseRequestHandler):defhandle(self):self.data=self.request.recv().strip()print"From%s:%s"%(self.client_address,self.d

python目录与文件名操作例子 1、操作目录与文件名#!/usr/bin/envpython#-*-coding:utf-8-*-importos,reimportshutilimporttime用listdir搜索defsearch_OFD_old(my_pattern,diretory):try:names=os.listdir(diretory)exceptos.error:

标签: python守护线程与非守护线程

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

上一篇:Python+微信接口实现运维报警(python和微信交互)

下一篇:python使用电子邮件模块smtplib的方法(python写邮箱)

  • 小型微利企业所得税率
  • 不通过税金及附加的科目
  • 金税三期怎么合理避税
  • 增值税进项税额不得抵扣的几种情形
  • 债务承担规定是什么意思
  • 其他权益工具投资科目编码
  • 业务员报销差旅费会计分录怎么做
  • 公司买的电器可以抵扣吗
  • 企业有利润要交什么税
  • 文化创意服务的税率
  • 个税身份验证不通过
  • 债券到期收益率计算器
  • 个人自产自销农产品免税政策
  • 长期股权投资成本法核算
  • 停产期间产生的费用怎么处理?
  • 冲减上年的所得税费用入什么科目?
  • 企业怎么申请无运输工具承运资质
  • 小型微利企业免于填报
  • 园林设计开票
  • 金税盘开的发票显示未报送怎么办
  • 建安类增值税专用发票什么时候改的
  • 老板带员工出去吃饭
  • 税法种类及税率
  • 新会计准则下职工薪酬的变化及影响摘要
  • 应付职工薪酬借方负数是什么意思
  • 进口货物账务处理外币
  • ami bios怎么设置u盘启动
  • 苹果6拍照如何
  • 生产性企业购买粽子可以开专票吗
  • 安装win7系统的硬件要求
  • 承租集体土地如何确权
  • php的数组函数
  • 金融企业风险资产处理相关税收政策
  • php安装扩展fileinfo
  • 计算机视觉的应用
  • 适用于windows7的更新程序会更新到windows10吗
  • mysql5.7分区表
  • 国际货运代理公司有哪些?
  • php调用网址
  • 用税盘开发票税费扣除是怎么回事?
  • 织梦停止更新了吗
  • mysql 扩展
  • 解决胃胀气最快方法
  • 加油充值预付卡怎么做账
  • 原始凭证分割单可以入账么
  • 现金流量表的编制公式 计算公式
  • 普票要盖发票的章子吗
  • SQL Server 2005 镜像构建手册(sql2005数据库同步镜像方案)
  • 发票税额不全能抵扣吗
  • 上月暂估的成本这月收到票怎么做
  • 长期待摊费用多少金额
  • 营业税差额征税范围
  • 待抵扣进项税额分录
  • 利润总额毛利润怎么算
  • 建筑企业案例
  • 企业成本结转分录
  • 基本户转账法人会知道吗
  • 营改增之后还有营业税金及附加吗
  • 运费是属于什么会计科目
  • 账簿设制的一般程序
  • mysql登录失败处理
  • 利用的英文
  • windows无法打开添加打印机
  • win8系统应用软件颜色不正常怎么办
  • windows8安装密钥永久
  • win7怎么禁止网络连接
  • 通过扣缴义务人申报和综合所得年度自行申报
  • jQuery+PHP实现可编辑表格字段内容并实时保存
  • firefox和谷歌
  • 在javascript中关于alert confirm
  • 怎么用bootstrap搭建网站
  • 安卓版本apk
  • JavaScript+html5 canvas制作的圆中圆效果实例
  • jquery入口
  • 违法的税务记录怎么消除
  • 机打发票教程视频
  • 税务三方协议多久生效
  • 报考地税局的要求是什么
  • 税控ic卡就是税控盘吗
  • 农民工12000要交多少个人所得税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设