ホームページ > バックエンド開発 > Python チュートリアル > Python でのプロセス間通信の簡単な例

Python でのプロセス間通信の簡単な例

WBOY
リリース: 2016-06-16 08:43:05
オリジナル
1591 人が閲覧しました

この記事の例では、Python が 2 つのプログラム間の通信を実装する方法を説明します。具体的な方法は次のとおりです。

この例はソケットを使用して実装されています。ソケット ネットワーク プログラミングとは異なり、socket.socket(socket.AF_UNIX、socket.SOCK_STREAM) の最初のパラメータはsocket.AF_UNIX

です。 代わりにsocket.AF_INET
この例では、2 つの Python プログラム s.py/c.py を最初に実行する必要があります
fedora13/python2.6 テストに基づいて、正常に実装されました。

s.py コードは次のとおりです:

#!/usr/bin/env python
import socket
import os

if __name__ == '__main__':
  sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
  conn = '/tmp/conn'
  if not os.path.exists(conn):
  os.mknod(conn)
  if os.path.exists(conn):
  os.unlink(conn)
  sock.bind(conn)
  sock.listen(5)
  while True:
  connection,address = sock.accept()
  data = connection.recv(1024)
  if data == "hello,server":
    print "the client said:%s!\n" % data
      connection.send("hello,client")
  connection.close() 

ログイン後にコピー

c.py コードは次のとおりです:

#!/usr/bin/env python
import socket
import time

if __name__ == '__main__':
  sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
  conn = '/tmp/conn'
  sock.connect(conn)
  time.sleep(1)
  sock.send('hello,server')
  print sock.recv(1024)
  sock.close() 
ログイン後にコピー
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート