Python中网络编程对 socket accept 函数的理解
在服务器端,socket()
返回的套接字用于监听(listen)和接受(accept),这个套接字不能用于与客户端之间发送和接收数据。
accept()
接受一个客户端的连接请求,并返回一个新的套接字,不同于以上socket()
返回的用于监听和接受客户端的连接请求的套接字;
与此客户端通信是通过这个新的套接字上发送和接收数据来完成的。
每个连接进来的客户端,都会通过accept函数
返回一个不同的客户端的socket对象
和属于客户端的套接字,代码如图:
假设一共有3个客户端连接到服务器端,那么在服务器端就移动有4个套接字,第1个是socket()
返回的,用于监听的套接字;
其余3个是分别调用3次accept()
返回的不同的套接字。
如果已经有客户端连接到服务器端,不再需要监听和接受更多的客户端连接的时候,可以关闭由socket()
返回的套接字,而不会影响与客户端之间的通信。
Python中网络编程对 socket accept 函数的理解相关推荐
- 网络编程socket accept函数的理解
在服务器端,socket()返回的套接字用于监听(listen)和接受(accept)客户端的连接请求.这个套接字不能用于与客户端之间发送和接收数据. accept()接受一个客户端的连接请求,并返回 ...
- Python之网络编程(Socket)
1.网络通信原理与互联网协议 详见:https://www.cnblogs.com/JackLi07/p/9218039.html 2.socket层 以上是tcp/ip五层协议的结构图,我们没有看到 ...
- Python之网络编程(socket基础)
文章目录 客户端/服务器架构 1.即C/S架构 2.C/S架构与socket的关系 3.两机交互的原理 Socket编程 1.socket编程的概念 2.socket的两种类型 3.socket的运行 ...
- python中网络编程(持续更新)
进程,线程和协程 进程:(进程是资源分配的最小单位.) 程序并不能单独运行,只有将程序装载到内存中,系统为它分配资源才能运行,而这种执行的程序就称之为进程.程序和进程的区别就在于:程序是指令的集合,它 ...
- python中网络编程总结(udp,tcp)
一.udp用户数据报协议(写信的模型:在通信开始,不需要建立相关的连接,只需要发送数据即可,类似于生活中的写信)(不安全:发的消息可能会丢,对方不会请求再发一遍) 1.ipv4:_ _ _ ._ _ ...
- Python高级网络编程系列之第一篇
在上一篇中我们简单的说了一下Python中网络编程的基础知识(相关API就不解释了),其中还有什么细节的知识点没有进行说明,如什么是TCP/IP协议有几种状态,什么是TCP三次握手,什么是TCP四次握 ...
- Python之网络编程(TCP套接字与UDP套接字)
文章目录 基于tcp的套接字 实现目标 tcp服务端源码 tcp客户端源码 tcp效果实现 基于udp的套接字 udp作用介绍 udp服务端源码 udp客户端源码 udp效果实现 用udp实现一个时间 ...
- Python 网络编程(Socket)
Python 网络编程(Socket) 一.Socket 套接字 1.Socket 编程 socket本质是编程接口(API),对TCP/IP的封装,提供可供程序员做网络开发所用的接口.Socket ...
- python recv_python网络编程调用recv函数完整接收数据的三种方法
最近在使用python进行网络编程开发一个通用的tcpclient测试小工具.在使用socket进行网络编程中,如何判定对端发送一条报文是否接收完成,是进行socket网络开发必须要考虑的一个问题.这 ...
最新文章
- Log4j格式化符号
- ContentProvider学习笔记
- 【若依(ruoyi)】重置密码SQL脚本
- 【Django】ORM操作#2
- 以整体思维看问题:解决单页应用,系统角色请求覆盖身份唯一标识(本项目中是session_id命名的)发送请求问题...
- mysql 之后_MYSQL登陆完之后如何操作???(新手求助)
- GLSurfaceView源码分析以及简单使用
- Linux学习总结(23)——SSH协议详解
- java 双重检查锁定_Java双重检查锁定
- 2021年中国船用鼓风机市场趋势报告、技术动态创新及2027年市场预测
- oracle有条件插入数据,Oracle有条件地插入数据
- Android 资讯类App项目实战 第一章 滑动顶部导航栏
- 初入职场,你够聪明不?
- JAVA电商商城系统
- 使用数位板或数位屏的压感笔时常见的问题及解决方法
- 诡异事件:天翼云主机CentOS8.2配置RedisServer5.0.3无法启动
- 复杂美吴思进出席浙江公共政策研究院“数字赋能与浙江智造”沙龙
- Java实时报表统计查询慢_如何解决报表关联计算中的性能问题
- ValueError: decision_function_shape must be either ‘ovr‘ or ‘ovo‘, got None.
- c语言什么是测试环境,vscode搭建与测试c语言运行环境