03-11 51—55


51.什么是反向代理和反向代理?

# 答案:
'''
反向代理,這個詞相信搞網絡的朋友都很熟悉的,但是具體是什么意思呢?說實話,復雜的我也不懂,就我個人理解而言,反向代理有很多用途,比如說保護真實服務器不被外界攻擊,加速網絡等等。今天我們要介紹的就是加速網絡的一種。
'''

52.創建進程:

'''
1.首先要導入multiprocessing中的Process;
2.創建一個Process對象;
3.創建Process對象時,可以傳遞參數;

1.p = Process(target=XXX, args=(元組,) , kwargs={key:value}) 
2.target = XXX 指定的任務函數,不用加() 
3.args=(元組,) , kwargs={key:value} 給任務函數傳遞的參數 
4.使用start()啟動進程;
5.結束進程。
'''

53.給子進程指定函數傳遞參數Demo:

import os
from multiprocessing import Process
import time
def pro_func(name, age, **kwargs):
	for i in range(5):
	print("子進程正在運行中,name=%s, age=%d, pid=%d" %(name, age, os.getpid()))
	print(kwargs)
	time.sleep(0.2)
if __name__ == '__main__':
	# 創建Process對象
	p = Process(target=pro_func, args=('小明',18), kwargs={'m': 20})
	# 啟動進程
	p.start()

time.sleep(1) # 1秒鍾之后,立刻結束子進程 17.
p.terminate()
p.join() 注意:進程間不共享全局變量。

54.進程之間的通信-Queue

在初始化Queue()對象時,(例如q=Queue(),若在括號中沒有指定最大可接受的消息數量,或數
量為負值時,那么就代表可接受的消息數量沒有上限-直到內存的盡頭)

55.進程間通信Demo:

from multiprocessing import Process, Queueimport os, time, random # 寫數據進程執行的代碼:def write(q):
for value in ['A', 'B', 'C']:
	print('Put %s to queue...' % value)
	q.put(value)
	time.sleep(random.random())


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM