如何進行Python進程的守護進程實施,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比陸港網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式陸港網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋陸港地區(qū)。費用合理售后完善,10余年實體公司更值得信賴。
Python進程這一計算機語言在實際的應(yīng)用中,如果你在實際應(yīng)用的過程中遇到相關(guān)問題,你就可以通過以下的文章對其的實際應(yīng)用有較為詳細(xì)的介紹,以下是文章的具體介紹,希望你會有所收獲。
Python進程
守護進程:通常被定義為一個后臺進程,而且它不屬于任何一個終端會話(terminal session)。許多系統(tǒng)服務(wù)由守護程序?qū)嵤?;如網(wǎng)絡(luò)服務(wù),打印等。 下面是轉(zhuǎn)自一位網(wǎng)友寫的編寫守護進程的步驟:
1. 調(diào)用fork()以便父進程可以退出,Python進程這樣就將控制權(quán)歸還給運行你程序的 命令行或shell程序。需要這一步以便保證新進程不是一個進程組頭領(lǐng)進程(process group leader)。下一步,setsid(),會因為你是進程組頭領(lǐng)進程而失敗。
2. 調(diào)用setsid()以便成為一個進程組和會話組的頭領(lǐng)進程。由于一個控制終端 與一個會話相關(guān)聯(lián),而且這個新會話還沒有獲得一個控制終端,我們的進程沒 有控制終端,這對于守護程序來說是一件好事。
3. 再次調(diào)用fork(),所以父進程(會話組頭領(lǐng)進程)可以退出。這意味著我們,一 個非會話組頭領(lǐng)進程永遠不能重新獲得控制終端。
4. 調(diào)用chdir("/")確認(rèn)我們的進程不保持任何目錄于使用狀態(tài)。不做這個會導(dǎo) 致系統(tǒng)管理員不能卸裝(umount)一個文件系統(tǒng),因為它是我們的當(dāng)前工作目錄。 [類似的,我們可以改變當(dāng)前目錄至對于守護程序運行重要的文件所在目錄]
5. 調(diào)用umask(0)以便我們擁有對于我們寫的任何東西的完全控制。我們不知 道我們繼承了什么樣的umask。 [這一步是可選的](譯者注:這里指步驟5,因為守護程序不一定需要寫文件)
6. 調(diào)用close()關(guān)閉文件描述符0,1和2。這樣我們釋放了從父進程繼承的標(biāo) 準(zhǔn)輸入,標(biāo)準(zhǔn)輸出,和標(biāo)準(zhǔn)錯誤輸出。我們沒辦法知道這些Python進程文描述符符可能 已經(jīng)被重定向去哪里。注意到許多守護程序使用sysconf()來確認(rèn) _SC_OPEN_MAX的限制。_SC_OPEN_MAX告訴你每個進程能夠打 開的最多文件數(shù)。
然后使用一個循環(huán),守護程序可以關(guān)閉所有可能的文件描 述符。你必須決定你需要做這個或不做。如果你認(rèn)為有可能有打開的文件描 述符,你需要關(guān)閉它們,因為系統(tǒng)有一個同時打開文件數(shù)的限制。
7. 為標(biāo)準(zhǔn)輸入,標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯誤輸出建立新的文件描述符。即使你不打算,使用它們,打開著它們不失為一個好主意。準(zhǔn)確操作這些描述符是基于各自 愛好;比如說,如果你有一個日志文件,你可能希望把它作為標(biāo)準(zhǔn)輸出和標(biāo) 準(zhǔn)錯誤輸出打開,而把/dev/null作為標(biāo)準(zhǔn)輸入打開;
作為替代方法,你可 以將/dev/console作為標(biāo)準(zhǔn)錯誤輸出和/或標(biāo)準(zhǔn)輸出打開/dev/null作為標(biāo)準(zhǔn)輸入,或者任何其Python進程對你的守護程序有意義的結(jié)合方法。
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。
本文名稱:如何進行Python進程的守護進程實施
標(biāo)題URL:http://aaarwkj.com/article12/iipcgc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、網(wǎng)站排名、網(wǎng)站導(dǎo)航、企業(yè)建站、網(wǎng)站內(nèi)鏈、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)