首页 > 编程 > Python > 正文

python实现进程间通信简单实例

2020-02-23 05:37:09
字体:
来源:转载
供稿:网友

本文实例讲解了python实现两个程序之间通信的方法,具体方法如下:

该实例采用socket实现,与socket网络编程不一样的是socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)的第一个参数是socket.AF_UNIX
而不是 socket.AF_INET
例中两个python程序 s.py/c.py 要先运行s.py
基于fedora13/python2.6测试,成功实现!

s.py代码如下:

#!/usr/bin/env pythonimport socketimport osif __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 pythonimport socketimport timeif __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() 
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表