socket + select 完成伪并发操作的实例
发布时间 - 2026-01-11 02:47:42 点击率:次实例如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import socket
#创建一个socket对象
sk1 = socket.socket()
#绑定ip和端口
sk1.bind(('127.0.0.1', 8001))
#监听
sk1.listen()
#定义一个字典存放客户端发送的信息
message_dict = {}
#inputs用于存放socket对象
inputs = [sk1]
#哪一个客户端发送信息就把哪一个客户端的存放进output
output = []
import select
while True:
r_list, w_list, e_list = select.select(inputs, output, inputs, 1)
print('正在监听的socket%d' %len(inputs))
print(r_list)
for sk_or_conn in r_list:
if sk_or_conn == sk1:
conn, address = sk_or_conn.accept()
inputs.append(conn)
message_dict[conn] = []
else:
try:
data_bytes = sk_or_conn.recv(1024)
except Exception as ex:
inputs.remove(sk_or_conn)
else:
data_str = str(data_bytes, encoding='utf-8')
message_dict[sk_or_conn].append(data_str)
output.append(sk_or_conn)
for conn in w_list:
data_message = message_dict[sk_or_conn][0]
del message_dict[sk_or_conn][0]
conn.sendall(bytes(data_message + '好',encoding='utf-8'))
output.remove(conn)
以上这篇socket + select 完成伪并发操作的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
# socket
# select
# Python基于select实现的socket服务器
# 客户端
# 给大家
# 就把
# 希望能
# 这篇
# 绑定
# 创建一个
# 小编
# 大家多多
# import
# bytes
# python
# coding
# utf
# sendall
# ip
# bind
# color
# ccffcc
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何在IIS服务器上快速部署高效网站?
Laravel如何配置和使用队列处理异步任务_Laravel队列驱动与任务分发实例
如何快速打造个性化非模板自助建站?
Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程
Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】
实现点击下箭头变上箭头来回切换的两种方法【推荐】
nodejs redis 发布订阅机制封装实现方法及实例代码
Laravel如何编写单元测试和功能测试?(PHPUnit示例)
Laravel安装步骤详细教程_Laravel环境搭建指南
如何在搬瓦工VPS快速搭建网站?
Laravel怎么做缓存_Laravel Cache系统提升应用速度的策略与技巧
Laravel Eloquent模型如何创建_Laravel ORM基础之Model创建与使用教程
高防服务器租用指南:配置选择与快速部署攻略
Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】
浅谈redis在项目中的应用
历史网站制作软件,华为如何找回被删除的网站?
JavaScript模板引擎Template.js使用详解
Laravel队列由Redis驱动怎么配置_Laravel Redis队列使用教程
网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?
黑客如何利用漏洞与弱口令入侵网站服务器?
韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐
Laravel如何配置Horizon来管理队列?(安装和使用)
Laravel Facade的原理是什么_深入理解Laravel门面及其工作机制
php8.4header发送头信息失败怎么办_php8.4header函数问题解决【解答】
Android 常见的图片加载框架详细介绍
深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?
Python正则表达式进阶教程_复杂匹配与分组替换解析
想要更高端的建设网站,这些原则一定要坚持!
Android使用GridView实现日历的简单功能
Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中
php嵌入式断网后怎么恢复_php检测网络重连并恢复硬件控制【操作】
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?
laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法
Laravel项目结构怎么组织_大型Laravel应用的最佳目录结构实践
如何在万网ECS上快速搭建专属网站?
Linux系统命令中tree命令详解
公司网站制作需要多少钱,找人做公司网站需要多少钱?
如何挑选优质建站一级代理提升网站排名?
浅析上传头像示例及其注意事项
Laravel如何使用Service Container和依赖注入?(代码示例)
在线教育网站制作平台,山西立德教育官网?
重庆市网站制作公司,重庆招聘网站哪个好?
Laravel API路由如何设计_Laravel构建RESTful API的路由最佳实践
东莞专业网站制作公司有哪些,东莞招聘网站哪个好?
Laravel如何使用Service Provider服务提供者_Laravel依赖注入与容器绑定【深度】
谷歌浏览器下载文件时中断怎么办 Google Chrome下载管理修复
iOS中将个别页面强制横屏其他页面竖屏
悟空浏览器如何设置小说背景色_悟空浏览器背景色设置【方法】
Laravel如何连接多个数据库_Laravel多数据库连接配置与切换教程

