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


Posted in Python onJuly 23, 2014

本文实例讲解了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
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()
Python 相关文章推荐
Python tempfile模块学习笔记(临时文件)
May 25 Python
浅析Python中的join()方法的使用
May 19 Python
Python中Django框架下的staticfiles使用简介
May 30 Python
在Python的Flask框架中构建Web表单的教程
Jun 04 Python
Python元组拆包和具名元组解析实例详解
Mar 26 Python
python远程连接服务器MySQL数据库
Jul 02 Python
python消除序列的重复值并保持顺序不变的实例
Nov 08 Python
django模板加载静态文件的方法步骤
Mar 01 Python
在python中画正态分布图像的实例
Jul 08 Python
python实现几种归一化方法(Normalization Method)
Jul 31 Python
Python3从零开始搭建一个语音对话机器人的实现
Aug 23 Python
python实现股票历史数据可视化分析案例
Jun 10 Python
Python数组条件过滤filter函数使用示例
Jul 22 #Python
Python标准库与第三方库详解
Jul 22 #Python
Python调用C/C++动态链接库的方法详解
Jul 22 #Python
使用python编写批量卸载手机中安装的android应用脚本
Jul 21 #Python
使用python编写脚本获取手机当前应用apk的信息
Jul 21 #Python
使用python编写android截屏脚本双击运行即可
Jul 21 #Python
python 示例分享---逻辑推理编程解决八皇后
Jul 20 #Python
You might like
php录入页面中动态从数据库中提取数据的实现
2006/10/09 PHP
php+jquery编码方面的一些心得(utf-8 gb2312)
2010/10/12 PHP
深入解析PHP垃圾回收机制对内存泄露的处理
2013/06/14 PHP
php生成excel文件的简单方法
2014/02/08 PHP
php实现httpclient类示例
2014/04/08 PHP
[原创]php实现 data url的图片生成与保存
2016/12/04 PHP
针对thinkPHP5框架存储过程bug重写的存储过程扩展类完整实例
2018/06/16 PHP
免费空间广告万能消除代码
2006/09/04 Javascript
JavaScript 全面解析各种浏览器网页中的JS 执行顺序
2009/02/17 Javascript
几个有趣的Javascript Hack
2010/07/24 Javascript
浅析jQuery(function(){})与(function(){})(jQuery)之间的区别
2014/01/09 Javascript
js获得页面的高度和宽度的方法
2014/02/23 Javascript
JavaScript中的typeof操作符用法实例
2014/04/05 Javascript
jQuery子属性过滤选择器用法分析
2015/02/10 Javascript
js验证上传图片的方法
2015/05/12 Javascript
基于Jquery实现仿百度百科右侧导航代码附源码下载
2015/11/27 Javascript
Vue学习笔记进阶篇之单元素过度
2017/07/19 Javascript
使用ef6创建oracle数据库的实体模型遇到的问题及解决方案
2017/11/09 Javascript
微信小程序如何实现全局重新加载
2019/06/05 Javascript
如何利用JavaScript编写一个格斗小游戏
2021/01/06 Javascript
零基础写python爬虫之打包生成exe文件
2014/11/06 Python
python显示生日是星期几的方法
2015/05/27 Python
使用C#配合ArcGIS Engine进行地理信息系统开发
2016/02/19 Python
python脚本设置系统时间的两种方法
2016/02/21 Python
python3中的md5加密实例
2018/05/29 Python
Python日期时间对象转换为字符串的实例
2018/06/22 Python
Python中Proxypool库的安装与配置
2018/10/19 Python
Django中使用CORS实现跨域请求过程解析
2019/08/05 Python
Python pandas.DataFrame 找出有空值的行
2019/09/09 Python
会计岗位职责
2013/11/08 职场文书
《独坐敬亭山》教学反思
2014/04/08 职场文书
2014年个人委托书范本
2014/10/13 职场文书
2015年学雷锋活动总结
2015/02/06 职场文书
电影地道战观后感
2015/06/04 职场文书
四群教育工作总结
2015/08/10 职场文书
GoFrame gredis缓存DoVar Conn连接对象 自动序列化GoFrame gredisDo/DoVar方法Conn连接对象自动序列化/反序列化总结
2022/06/14 Golang