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

实例讲解了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 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
# www.jbxue.com
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()

最新文章

  1. checkbox的全选与反选
  2. WindowsAPI调用和OCR图片识别
  3. NVIC优先级分组
  4. Myeclipse10编写jsp时出现 Multiple annotations found at this line:
  5. C 语言学习guideline
  6. redis的内部实现机制
  7. kafka解释三的具体:发展Kafka应用
  8. EntityFrameworkCore使用Migrations自动更新数据库
  9. http服务详解(1)——一次完整的http服务请求处理过程
  10. strict 严格模式
  11. Flex进度条
  12. angr进阶(2)C++程序的处理
  13. laravel-重定向携带自定义消息
  14. Spotlight on Mysql详细介绍
  15. 【转载】论文笔记系列-Tree-CNN: A Deep Convolutional Neural Network for Lifelong Learning
  16. MyBatis项目快速搭建及MySQL一个Statement支持多条命令参数
  17. msfvenom生成各类Payload命令
  18. 小麦成长记-<专业盗图好几年>
  19. monkey压力测试
  20. day37(类加载器)

热门文章

  1. VIM设置代码折叠
  2. 【转发】PHP连接MSSQL数据库案例,PHPWAMP多个PHP版本连接SQL Server数据库
  3. 使用VS2015开发asp程序让IIS express 允许的父路径的方法
  4. oracle 两个网络不通的远程数据库如何将一个库中的表数据导入到另一个库中?
  5. 【Linux】eclipse juno 边框过大的调整方法
  6. python模块之lib2to3(py2转py3自动化工具)
  7. 解决input 有多少个radio绑定change事件,手动触发就会执行多少次问题
  8. Dockerfile 构建后端tomcat应用并用shell脚本实现jenkins自动构建
  9. iOS热更新技术被苹果官方警告?涉及到RN、Weex、JSPatch
  10. C++11开发中的Atomic原子操作