摘要:代表網(wǎng)絡(luò)地址的元組或者代表域套接字的文件名,或者代表形式的字符串,代表遠(yuǎn)程系統(tǒng)本地計(jì)算機(jī)的為上的一條命名管道。是一個(gè)整數(shù),當(dāng)參數(shù)指定了一個(gè)網(wǎng)絡(luò)連接時(shí),對(duì)應(yīng)于傳遞給套接字的方法的值,默認(rèn)為。
上一篇文章:Python進(jìn)程專題7:托管對(duì)象
下一篇文章:Python進(jìn)程專題9:關(guān)于進(jìn)程的實(shí)用工具函數(shù)
使用multiprocessing模塊的程序不僅可以于運(yùn)行在同一計(jì)算機(jī)的其它程序進(jìn)行消息傳遞,還可以于位于不到計(jì)算機(jī)的遠(yuǎn)程系統(tǒng)程序進(jìn)行消息傳遞。其中的multiprocessing.connection子模塊包含該目的的函數(shù)和類:
connections.Client(address,family,authenticate,authkey)
連接到另一個(gè)進(jìn)程,此進(jìn)程必須已經(jīng)正在監(jiān)聽地址address。 address:代表網(wǎng)絡(luò)地址的元組(hostname,port),或者代表UNIX域套接字的文件名,或者代表 r"servernamepipepipename"形式的字符串,代表遠(yuǎn)程系統(tǒng)servername(本地計(jì)算機(jī)的servername為".")上的一條Windows命名管道。 family:表示地址格式的字符串。一般是"AF_INET"、"AF_UNIX"、或"AF_PIPE".如果省略此參數(shù),將從address的格式退出它的值。 backlog:是一個(gè)整數(shù),當(dāng)address參數(shù)指定了一個(gè)網(wǎng)絡(luò)連接時(shí),對(duì)應(yīng)于傳遞給套接字的listen()方法的值,backlog默認(rèn)為1。 authenticate:一個(gè)布爾標(biāo)志,指定是否使用摘要身份驗(yàn)證。 authkey:包含身份驗(yàn)證密鑰的字符串,如果忽略此參數(shù),將使用current_process().authkey的值。 此函數(shù)的返回值是Connection對(duì)象,管道中有講過。
connections.Listener(address,family,backlog,authenticate,authkey)
實(shí)現(xiàn)了一臺(tái)服務(wù)器,用于偵聽和處理Client()函數(shù)發(fā)送的連接。 如果省略address參數(shù),將選擇默認(rèn)地址,如果同時(shí)省略address和family兩個(gè)參數(shù),將選擇本地系統(tǒng)上速度最快的可用通信模式。
Listener實(shí)例listener支持一下方法和屬性。
屬性或方法名 | 介紹 |
---|---|
listener.accept() | 接受一個(gè)新連接,并返回一個(gè)Connetion對(duì)象。如果身份驗(yàn)證失敗,將引發(fā)Authentication-Error異常 |
listener.address | 偵聽器正在使用的地址 |
listener.close() | 關(guān)閉偵聽器正在使用的管道或套接字 |
listener.last_accepted | 接受的最后一個(gè)客戶端的地址。 |
#服務(wù)器端,負(fù)責(zé)監(jiān)聽客戶端并實(shí)現(xiàn)簡(jiǎn)單的遠(yuǎn)程操作 from multiprocessing.connection import Listener serv=Listener(("",11111),authkey="123456".encode()) while True: conn=serv.accept() while True: try: x,y=conn.recv() except EOFError: print("出錯(cuò)了") break result=x+y conn.send(result) conn.close()
#客戶端,向服務(wù)器端發(fā)送消息 from multiprocessing.connection import Client conn=Client(("localhost",11111),authkey="123456".encode()) conn.send((5,6)) r=conn.recv() print(r) conn.send(("mark","帥哥")) r=conn.recv() print(r) conn.close()
11 mark帥哥
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/42353.html
摘要:上一篇文章進(jìn)程專題分布集群的消息傳遞下一篇文章進(jìn)程專題函數(shù)解析返回所有活動(dòng)子進(jìn)程的對(duì)象組成的列表返回系統(tǒng)上的數(shù)量,如果能夠確定的話返回當(dāng)前進(jìn)程的對(duì)象在實(shí)用各種打包工具如進(jìn)行凍結(jié)的應(yīng)用程序中,次函數(shù)應(yīng)該作為主程序的首行。 上一篇文章:Python進(jìn)程專題8:分布集群的消息傳遞下一篇文章:Python進(jìn)程專題10:GIL 函數(shù) 解析 activite_children() 返回...
摘要:連接帶遠(yuǎn)程管理器對(duì)象,該對(duì)象的地址在構(gòu)造函數(shù)中支出。在當(dāng)前進(jìn)程中運(yùn)行管理器服務(wù)器。啟動(dòng)一個(gè)單的子進(jìn)程,并在該子進(jìn)程中啟動(dòng)管理器服務(wù)器。如果無法序列號(hào)對(duì)象將引發(fā)異常。 上一篇文章:Python進(jìn)程專題6:共享數(shù)據(jù)與同步下一篇文章:Python進(jìn)程專題8:分布集群的消息傳遞 進(jìn)程不支持共享對(duì)象,上面描述的創(chuàng)建共享值和數(shù)組,但都是指定的特殊類型,對(duì)高級(jí)的Python對(duì)象(如:字典、列表、用...
摘要:可以使用標(biāo)準(zhǔn)的索引切片迭代操作訪問它,其中每項(xiàng)操作均鎖進(jìn)程同步,對(duì)于字節(jié)字符串,還具有屬性,可以把整個(gè)數(shù)組當(dāng)做一個(gè)字符串進(jìn)行訪問。當(dāng)所編寫的程序必須一次性操作大量的數(shù)組項(xiàng)時(shí),如果同時(shí)使用這種數(shù)據(jù)類型和用于同步的單獨(dú)大的鎖,性能將極大提升。 上一篇文章:Python進(jìn)程專題5:進(jìn)程間通信下一篇文章:Python進(jìn)程專題7:托管對(duì)象 我們現(xiàn)在知道,進(jìn)程之間彼此是孤立的,唯一通信的方式是隊(duì)...
摘要:上一篇文章進(jìn)程專題進(jìn)程池下一篇文章進(jìn)程專題共享數(shù)據(jù)與同步模塊支持的進(jìn)程間通信主要有兩種管道和隊(duì)列。隊(duì)列底層使用管道和鎖,同時(shí)運(yùn)行支持線程講隊(duì)列中的數(shù)據(jù)傳輸?shù)降讓庸艿乐?,來?shí)習(xí)進(jìn)程間通信。 上一篇文章:Python進(jìn)程專題4:進(jìn)程池Pool下一篇文章:Python進(jìn)程專題6:共享數(shù)據(jù)與同步 multiprocessing模塊支持的進(jìn)程間通信主要有兩種:管道和隊(duì)列。一般來說,發(fā)送較少的大...
摘要:大數(shù)據(jù)除了體積和速度外,數(shù)據(jù)的多樣性和準(zhǔn)確性也是大數(shù)據(jù)的一大特點(diǎn)。這些也被稱為大數(shù)據(jù)的特征。介紹是一個(gè)解決大數(shù)據(jù)問題的分布式可伸縮的框架。介紹計(jì)算的模型最早出現(xiàn)在谷歌的一篇研究論文中。相關(guān)鏈接介紹是一個(gè)通用的分布式編程框架。 本文作者:foochane?本文鏈接:https://foochane.cn/article/2019060601.html 1 大數(shù)據(jù)簡(jiǎn)介 大數(shù)據(jù)是這個(gè)時(shí)代最...
閱讀 3027·2023-04-26 00:32
閱讀 512·2019-08-30 15:52
閱讀 2118·2019-08-30 15:52
閱讀 3363·2019-08-30 15:44
閱讀 3292·2019-08-30 14:09
閱讀 1425·2019-08-29 15:15
閱讀 3404·2019-08-28 18:12
閱讀 1088·2019-08-26 13:55