我有一個python腳本,它可以很好地偵聽端口上的UDP數據包。 我已經知道如何廣播一個UDP數據包,但是我的軟件的設計需要我能夠監聽UDP數據包並同時播放它們。如何在同一時間監聽端口和從另一個端口進行廣播? Python
如何在一個端口上偵聽UDP數據包,同時程序繼續進行,最終導致數據包廣播?
簡單地說,我想我的聽力環....
print("Listening on port: " + str(self.recvPort))
while 1:
data = inSoc.recv(65536) # 16 bytes
# Recived some data from the server, Can PROCCESS NOW!
if not data:
pass
else:
print("Data has arrived!")
print("[Data] : ", data)
...不斷在後臺運行,而腳本繼續其他任務,其中之一是播放出不同的端口上。
我知道這應該是與線程,_thread或異步的關係,但是我無法讓這些工作?
我叫環路的async def
但未能由於沒有一個await
我說你真的應該看看芹菜。如果它必須位於單個腳本中,則需要使用單獨的處理器,因爲某些操作可能會被阻止。如果你必須分享2之間的狀態,那麼你會想使用像經理字典。 –
我最喜歡使用同一個腳本 – Harvey
然後你必須運行單獨的處理器(感謝gil),但是需要一個經理字典https://docs.python.org/2/library/multiprocessing.html#sharing過程之間的狀態應該不是什麼大問題。 –