位置: 编程技术 - 正文

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写邮箱)

  • 小规模修理修配的税率是多少
  • 劳务报酬个人所得税税率表
  • 何为金税四期
  • 现金流量表现金指的什么
  • 社保公司部分交多少比例
  • 集团公司内部调动
  • 报税时其他收入
  • 农民合作社缴附加税吗
  • 集团子公司之间调拨固定资产
  • 应收账款的借方表示增加还是减少
  • 银行利息收入可以开增值税专用发票
  • 增值税专用发票几个点
  • 小规模的企业所得税税率
  • 社保基金的管理模式
  • 所得税多交但又不想去税务局退税怎样做账?
  • 金税控系统发票打印设置
  • 主办会计和会计助理的区别
  • 财务会计怎么学好
  • 研发企业税率
  • 现金流量表根据什么原则编制
  • 怎么向个体工商户贷款
  • 人力资源外包公司发展前景
  • 个人独资企业怎么取钱
  • windows7远程桌面连接在哪里
  • 在建工程进项税可以抵扣吗
  • 如何控制网络速度
  • 合并范围外关联方交易是否抵消
  • php怎么输出汉字
  • cmd. exe 程序错误
  • wmpdmc.exe是什么意思
  • AriaNg Native 1.2.4 Aria2图形界面下载工具 中文免费版 32/64位
  • 代开的发票需要企业盖章还是税务机关盖章?
  • 十大网页游戏
  • 人脸识别测颜值,al
  • 写一个php访问数据库并读取数据的脚本
  • laravel orm使用
  • 给深度学习研究生的入门建议(未完待续ing)
  • 前端技巧
  • php页面显示代码
  • 代发工资如何计算
  • 小型微利企业的认定标准
  • 什么是预收账款减少
  • 公司车辆固定资产转移税
  • 完美破解什么意思
  • 收到增值进项发票
  • 社保可以补交吗
  • 工资总额借方和贷方的区别
  • sql server如何进行安全设置
  • 小规模纳税人减按1%征收率征收增值税
  • 其他综合收益的概念
  • 员工过生日公司有福利吗
  • 怎样暂估成本的会计分录
  • 所得税费用如何计提分录
  • 资金紧张怎么说
  • 公司中标
  • 公司收到某人打款怎么做分录
  • 购买原材料还没发票
  • 本月没有认证的进项税怎么做分录
  • 建筑服务红字发票需要填写备注吗
  • 人力资源公司可以开培训费发票吗
  • 固定资产报废需要进项税额转出吗
  • 公司账本需要保留几年
  • 关于职工住房补贴相关文件及规定
  • 数据表的联接
  • 苹果mac系统关机怎么关
  • linux必学的60个命令及使用
  • make_sock: could not bind to address 0.0.0.0:443
  • win7右下角时间怎么显示年月日
  • 隐藏网络怎么连接电脑连不上
  • 升级linux版本
  • Node.js中的事件循环是什么
  • js实现时间
  • js模拟实现new
  • 税控盘税务数字书驱动找不到应用程序是咋回事
  • 广西电子税务局手机版
  • 深圳电子税务局app
  • 河北云办税厅2.0登录
  • 什么是征收率什么是税率
  • 从国外买东西回来卖
  • 非居民企业机构场所核定征收
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设