Skip to main content

Command Palette

Search for a command to run...

#select

Articles tagged with #select

  1. 使用poll()代替select()处理多客户连接的TCP服务器实例

    在网络编程中,使用 select() 处理多客户端的连接是非常常用的方法,select() 是一个非常古老的方法,在大量连接下会显得效率不高,而且其对描述符的数值还有一些限制,Linux内核从 2.1.13 版以后提供了 poll() 替代 select(),本文介绍 poll() 在网络编程中的使用方法,并着重介绍 poll() 在编程行与 select() 的区别,旨在帮助熟悉 select() 编程的程序员可以很容易地使用 poll() 编程,本文提供了一个具体的实例,并附有完整的源代码,...

    Feb 26, 20245 min read10
    使用poll()代替select()处理多客户连接的TCP服务器实例
  2. 接收arp请求并发送回应的实例

    ARP协议在网络编程中有着重要的地位,是一个工作在数据链路层的协议,本文简单介绍了ARP协议,用一个实例查看收到的ARP请求,并对该请求发出ARP回应,实例有完整的源代码,使用C语言在Linux下实现,代码中有详细的注释;阅读本文需要有一定的网络编程基础,了解OSI的网络模型,本文对初学者有一定的难度。 1. ARP协议 ARP(Address Resolution Protocol),地址解析协议;在局域网上通过IP地址获取物理地址MAC的协议,该协议工作在数据链路层; 为什么需要ARP协...

    Jan 12, 20233 min read80
    接收arp请求并发送回应的实例
  3. TCP服务器如何使用select处理多客户连接

    TCP是一种面向连接的通信方式,一个TCP服务器难免会遇到同时处理多个用户的连接请求的问题,本文用一个简化的实例说明如何在一个TCP服务器程序中,使用select处理同时出现的多个客户连接,文章给出了程序源代码,阅读本文应该具备了基本的socket编程知识,熟悉基本的服务器/客户端模型架构;本文对初学者难度不大。 1. 基本思路 TCP服务器端程序,对于每一个连接请求,可以使用多线程的方式为每一个连接启动一个线程处理该连接的通信,但使用多线程的方式,通常认为有如下缺点: 多线程编程和调试相对...

    Jan 9, 20232 min read50
    TCP服务器如何使用select处理多客户连接