python多程式與子程式
點選(此處)摺疊或開啟
-
#!/usr/bin/env python3
- #–*– coding:utf–8 –*–
-
“`
- `“
- #多程式,pool
- from multiprocessing import Process
- from multiprocessing import Pool
- import os
- import time
- import random
- def f(name):
- print(`hello, %s,pid=%s` % (name, os.getpid()))
- if __name__ == `__main__`:
- print(`Parent process %s ` % os.getpid())
- p=Process(target=f, args=(`talen`,))
- print(`Child process will start.`)
- p.start()
- p.join()
- print(`Child process end`)
- def long_time_task(name):
- print(`Run task %s (%s)…` % (name,os.getpid()))
- start=time.time()
- time.sleep(random.random() * 3)
- end=time.time()
- print(`Task %s runs %0.2f seconds` % (name,(end – start )))
- if __name__ == `__main__`:
- print(`Parent process %s ` % os.getpid())
- pp=Pool(4)
- for i in range(6):
- pp.apply_async(long_time_task,args=(i,))
- print(`Child process will start.`)
- pp.close()
- pp.join()
- print(`Child process end`)
- #子程式
- import subprocess
- print(`$ nslookup htfchina.blog.chinaunix.net`)
- r = subprocess.call([`nslookup`,`htfchina.blog.chinaunix.net`])
- print(`Exit code :`,r)
- #輸入網址
- print(`$ nslookup`)
- subp=subprocess.Popen([`nslookup `], shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
-
output, err = subp.communicate(b`set q=mx
www.baidu.com
exit
`) - print(output.decode(`utf-8`))
- print(`Exit code:`,subp.returncode)
點選(此處)摺疊或開啟
-
/usr/bin/python3 /home/t/PycharmProjects/untitled/mutliprocessing_t.py
- Parent process 14001
- Child process will start.
- hello, talen,pid=14002
- Child process end
- Parent process 14001
- Child process will start.
- Run task 0 (14003)...
- Run task 1 (14004)...
- Run task 2 (14005)...
- Run task 3 (14006)...
- Task 3 runs 0.02 seconds
- Run task 4 (14006)...
- Task 0 runs 2.07 seconds
- Run task 5 (14003)...
- Task 1 runs 2.46 seconds
- Task 4 runs 2.58 seconds
- Task 2 runs 2.97 seconds
- Task 5 runs 2.33 seconds
- Child process end
- $ nslookup htfchina.blog.chinaunix.net
- Server: 10.10.106.201
- Address: 10.10.106.201#53
- Non–authoritative answer:
- Name: htfchina.blog.chinaunix.net
- Address: 61.55.167.140
- Exit code : 0
- $ nslookup
- Server: 10.10.106.201
- Address: 10.10.106.201#53
- Non–authoritative answer:
- www.baidu.com canonical name = www.a.shifen.com.
- Authoritative answers can be found from:
- a.shifen.com
- origin = ns1.a.shifen.com
- mail addr = baidu_dns_master.baidu.com
- serial = 1605030003
- refresh = 5
- retry = 5
- expire = 86400
- minimum = 3600
- Exit code: 0
- Process finished with exit code 0
相關文章
- 【Python】 多程式與多執行緒Python執行緒
- PHP多程式學習(二)__fork起多個子程式,父程式的阻塞與非阻塞PHP
- [譯] Python 的多執行緒與多程式Python執行緒
- Python多程式Python
- PHP多程式學習(三)__程式碼案例來了解父程式與子程式的執行順序PHP
- Python多程式程式設計Python程式設計
- [python] 多程式程式設計Python程式設計
- python中的Queue與多程式(multiprocessing)Python
- python使用多程式Python
- python:python的多程式Python
- Python 多執行緒多程式Python執行緒
- python多程式基礎Python
- Python中的多程式Python
- python---多工程式Python
- python 多程式詳解Python
- Python 多程式實踐Python
- python進階(15)多執行緒與多程式效率測試Python執行緒
- Python網路程式設計(子程式的建立與處理、簡單群聊工具)Python程式設計
- Python 中子程式與父程式Python
- Python標準庫06 子程式Python
- 豬行天下之Python基礎——9.1 Python多執行緒與多程式(上)Python執行緒
- 豬行天下之Python基礎——9.2 Python多執行緒與多程式(中)Python執行緒
- 豬行天下之Python基礎——9.3 Python多執行緒與多程式(下)Python執行緒
- python多程式簡介,和VNPY多程式引數優化程式碼分析Python優化
- 深入理解Node.js的程式與子程式Node.js
- Python並行程式設計(七):多程式的基本使用和與多執行緒的差異Python並行行程程式設計執行緒
- python的子子孫孫(變種程式語言)Python
- Python多程序中並行程式設計與程序池Python並行行程程式設計
- python 多程式通訊模組Python
- fork同時建立多個子程式的方法
- Python的多程式和多執行緒Python執行緒
- 入門python多執行緒/多程式Python執行緒
- 搞定python多執行緒和多程式Python執行緒
- 關於 Python 多執行緒/多程式Python執行緒
- Python模組學習:subprocess 建立子程式Python
- Python——程式、執行緒、協程、多程式、多執行緒(個人向)Python執行緒
- Python多程式程式設計基礎——圖文版Python程式設計
- Python 多執行緒及程式Python執行緒