欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

Python如何創(chuàng)建守護(hù)進(jìn)程-創(chuàng)新互聯(lián)

今天就跟大家聊聊有關(guān)Python 如何創(chuàng)建守護(hù)進(jìn)程,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

專注于為中小企業(yè)提供成都網(wǎng)站制作、成都做網(wǎng)站服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)重慶免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上1000+企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

守護(hù)進(jìn)程就是Daemon程序,是一種在系統(tǒng)后臺(tái)執(zhí)行的程序,它獨(dú)立于控制終端并且執(zhí)行一些周期任務(wù)或觸發(fā)事件,通常被命名為"d"字母結(jié)尾,如常見的httpd、syslogd、systemd和dockerd等。

代碼實(shí)現(xiàn)

python可以很簡(jiǎn)潔地實(shí)現(xiàn)守護(hù)進(jìn)程,下面先給出代碼和相應(yīng)注釋:

# coding=utf8
import os
import sys
import atexit
 
 
def daemonize(pid_file=None):
  """
  創(chuàng)建守護(hù)進(jìn)程
  :param pid_file: 保存進(jìn)程id的文件
  :return:
  """
  # 從父進(jìn)程fork一個(gè)子進(jìn)程出來(lái)
  pid = os.fork()
  # 子進(jìn)程的pid一定為0,父進(jìn)程大于0
  if pid:
    # 退出父進(jìn)程,sys.exit()方法比os._exit()方法會(huì)多執(zhí)行一些刷新緩沖工作
    sys.exit(0)
 
  # 子進(jìn)程默認(rèn)繼承父進(jìn)程的工作目錄,最好是變更到根目錄,否則回影響文件系統(tǒng)的卸載
  os.chdir('/')
  # 子進(jìn)程默認(rèn)繼承父進(jìn)程的umask(文件權(quán)限掩碼),重設(shè)為0(完全控制),以免影響程序讀寫文件
  os.umask(0)
  # 讓子進(jìn)程成為新的會(huì)話組長(zhǎng)和進(jìn)程組長(zhǎng)
  os.setsid()
 
  # 注意了,這里是第2次fork,也就是子進(jìn)程的子進(jìn)程,我們把它叫為孫子進(jìn)程
  _pid = os.fork()
  if _pid:
    # 退出子進(jìn)程
    sys.exit(0)
 
  # 此時(shí),孫子進(jìn)程已經(jīng)是守護(hù)進(jìn)程了,接下來(lái)重定向標(biāo)準(zhǔn)輸入、輸出、錯(cuò)誤的描述符(是重定向而不是關(guān)閉, 這樣可以避免程序在 print 的時(shí)候出錯(cuò))
 
  # 刷新緩沖區(qū)先,小心使得萬(wàn)年船
  sys.stdout.flush()
  sys.stderr.flush()
 
  # dup2函數(shù)原子化地關(guān)閉和復(fù)制文件描述符,重定向到/dev/nul,即丟棄所有輸入輸出
  with open('/dev/null') as read_null, open('/dev/null', 'w') as write_null:
    os.dup2(read_null.fileno(), sys.stdin.fileno())
    os.dup2(write_null.fileno(), sys.stdout.fileno())
    os.dup2(write_null.fileno(), sys.stderr.fileno())
 
  # 寫入pid文件
  if pid_file:
    with open(pid_file, 'w+') as f:
      f.write(str(os.getpid()))
    # 注冊(cè)退出函數(shù),進(jìn)程異常退出時(shí)移除pid文件
    atexit.register(os.remove, pid_file)

當(dāng)前文章:Python如何創(chuàng)建守護(hù)進(jìn)程-創(chuàng)新互聯(lián)
文章路徑:http://aaarwkj.com/article40/dgogeo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、虛擬主機(jī)網(wǎng)站改版、搜索引擎優(yōu)化網(wǎng)站收錄、網(wǎng)站設(shè)計(jì)公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)
粉嫩av一男战三女高潮| 97在线公开免费视频| 美女诱惑福利视频久久久| 国产成人综合欧美日韩另类| 亚洲不卡免费在线视频| 九七青青草视频在线观看| 成人精品午夜福利视频| 91一区二区亚洲嫩草| 亚洲女人天堂av在线| 高潮国产精品一区二区| 国产传媒视频在线免费观看| 中文字幕乱码亚洲2019| 日韩欧美高清一区二区三区| 午夜国产激情福利网站| 欧美老熟妇一区三区精品| 久久国产精品一品二品| 中文字幕日本乱码精品久久| 亚洲最大av免费在线看| 五月婷婷六月丁香伊人网| 人妻大乳一区二区三区| 天堂在线av免费观看| 国产精品对白久久久久粗| 国产传媒在线免费播放视频| 亚洲综合中文字幕久久网址| 精品国产免费第一区二区三| 国产精品夫妇在线激情啪| 日本亚洲一级中文字幕| 欧美成人精品欧美一级黄片| 日韩欧美黄色三级视频| 国产放荡av剧情精品| 免费成人激情在线电影| 一级片一区二区中文字幕| 97视频在线观看网站| 日韩欧美亚洲一区二区三区 | 最新91熟女九色地址| 国产亚洲精品一区久久| 欧美日本一区二区四区| 国产精品av在线网站| 我要看亚洲黄色片一级| 一区二区三区欧美影片| 久久免费观看性生活片|