Python のプロセス間通信: 双方向通信のオプションの探索
プロセス間通信は、別々の Python ランタイム間の対話を可能にするために重要です。次のようなさまざまなアプローチが試みられています。
マルチプロセッシングによるレスキュー
Python コミュニティは、マルチプロセッシング ライブラリを通じてエレガントなソリューションを提供します。ソケット上に構築されたリスナーとクライアントによるプロセスを強化し、任意の Python オブジェクトの交換を容易にします。
サーバー側実装:
<code class="python">from multiprocessing.connection import Listener # Define the server address address = ('localhost', 6000) # Create a listener with a secret password for authentication listener = Listener(address, authkey=b'secret password') # Accept incoming connections conn = listener.accept() print('Connection accepted from', listener.last_accepted) # Process incoming messages while True: msg = conn.recv() # Handle the message if msg == 'close': # End the communication conn.close() break listener.close()</code>
クライアント-サイド実装:
<code class="python">from multiprocessing.connection import Client # Specify the server address address = ('localhost', 6000) # Connect to the server using the secret password conn = Client(address, authkey=b'secret password') # Send commands to the server conn.send('close') # Send arbitrary objects as well # conn.send(['a', 2.5, None, int, sum]) # Close the connection conn.close()</code>
このソリューションを採用すると、Python で堅牢かつ効率的なプロセス間通信を簡単に確立でき、メッセージ パッシングと個別のプロセス間の双方向通信の要件を満たします。
以上がPython のマルチプロセッシング ライブラリはどのようにして双方向のプロセス間通信を促進できるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。