Python网络编程基础笔记-poll实现非阻塞socket
2015-04-13 17:40
826 查看
1.使用poll实现服务器端,监控创建的socket
2.客户端程序简单的向服务器发送一字符串
# -*- coding: cp936 -*- """ 非阻塞socket的使用(此程序在ubuntu linux上测试,Windows没有select.poll) 监控socket的三个状态:IN/ERR/HUP 程序以5000ms的时间长度为间隔,如果有客户端的请求,接收连接并进行显示;如果没有的话, 每隔5000ms显示一次"no data coming" """ import socket,select host = "" port = 50000 s = socket.socket(socket.AF_INET,socket.SOCK_STREAM) s.bind((host,port)) s.listen(5) # 创建poll对象,仅用于unix-like系统 p = select.poll() p.register(s.fileno(),select.POLLIN|select.POLLERR|select.POLLHUP) while 1: results = p.poll(5000) # 如果有结果返回,进行处理,否则不予理会 if len(results) != 0: if results[0][1] == select.POLLIN: clientsock,clientaddr = s.accept() buf = clientsock.recv(8196) if len(buf) != 0: print (buf) clientsock.close() print "no data coming" |
# -*- coding: cp936 -*- """ 向服务器端发送字符串 """ import socket,select host = "localhost" port = 50000 s = socket.socket(socket.AF_INET,socket.SOCK_STREAM) s.connect((host,port)) s.send("coming from poll client") s.close() |
相关文章推荐
- python 网络编程基础学习笔记(1)-网络客户端-socket
- socket-select函数来实现非阻塞的网络编程
- 在C#中使用异步Socket编程实现TCP网络服务的C/S的通讯构架(一)----基础类库部分(转)
- Python学习笔记(七) -- Python Socket 网络编程
- <<Python基础教程>>学习笔记 | 第14章 | 网络编程
- 在C#中使用异步Socket编程实现TCP网络服务的C/S的通讯构架(一)----基础类库部分(来源:http://blog.csdn.net/yangjundeng/archive/2005/03/17/321920.aspx)
- 在C#中使用异步Socket编程实现TCP网络服务的C/S的通讯构架(一)----基础类库部分
- 【python网络编程】利用select实现socket全双工异步通信
- Python学习笔记(4)-- 网络编程(1)-- socket
- Linux程序设计学习笔记----Socket网络编程基础之TCP/IP协议簇
- python 网络编程基础 笔记
- 在C#中使用异步Socket编程实现TCP网络服务的C/S的通讯构架(一)----基础类库部分
- [python]网络编程基础学习笔记(二)Web客户端访问
- [转载]在C#中使用异步Socket编程实现TCP网络服务的C/S的通讯构架(一)----基础类库部分 .
- Java网络编程——使用NIO实现非阻塞Socket通信
- 在C#中使用异步Socket编程实现TCP网络服务的C/S的通讯构架(一)----基础类库部分
- 在C#中使用异步Socket编程实现TCP网络服务的C/S的通讯构架(一)----基础类库部分
- python 网络编程笔记-socket
- 在C#中使用异步Socket编程实现TCP网络服务的C/S的通讯构架(一)----基础类库部分
- Python 初学笔记:Socket网络编程