登录
首页 » 通信 » 通过Winsock API实现UDP聊天的程序

通过Winsock API实现UDP聊天的程序

于 2022-10-22 发布 文件大小:19.76 kB
0 165
下载积分: 2 下载次数: 1

代码说明:

通过Winsock API实现UDP聊天的程序- Realizes the procedure through Winsock API which UDP chats

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • linux epoll模型
    该代码是关于在linux平台下的网络编程,epoll模型,socket接受线程:C语言为了高并发所以选择了epoll。当程序启动的时候(g_net_update.c文件中main函数,会启动一个thread见函数create_accept_task)这个thread就处理一件事情,只管接收客户端的连接,当有连接进来的时候 通过epoll_ctl函数,把socket fd 加入到epoll里面去,epoll设置监听事件EPOLLIN | EPOLLET; 主要是监听的是加入到epoll中的socket是否可读(因为我的需求是客户端连上了server就会马上向server发送一份数据的)。其它的部分在主线程中处理。主线程:是一个无线循环,epoll_wait 函数相当于把客户端的连接从epoll中拿出来(因为我们监听的是EPOLLIN | EPOLLET)说明这个时候客户端有数据发送过来)。再通过recv_buffer_from_fd 函数把客户端发送过来的数据读出来。然后其他的一切就抛给线程池去处理。线程池:(代码中我会在池里面创建15个线程) 双向链表。加入线程就是在链表后面加一个链表项,链表的前面会一个一个被拿出来处理。主要是malloc 函数free函数,sem_wait函数sem_post的处理(sem_wait 会阻塞当值大于0是会减一,sem_post是值加一)。typedef void* (FUNC)(void arg, int index);是我们自定义的线程的逻辑处理部分,arg是参数,index是第几个线程处理(我们隐形的给每个线程都标了号),例如代码中的respons_stb_info,更加具体可以看看代码里面是怎么实现的。聪明的你也可以改掉这块的内容改成动态线程池,当某个时刻的处理比较多的时候能够动态的增加线程,而不像我代码里面的是固定的。数据库连接池:按照我的需求在处理客户端请求数据的时候是要访问数据库的。就是一下子创建出一堆的数据连接。要访问数据库的时候先去数据库连接池中找出空闲的连接,具体可以看下代码。使用的时候可以参考下database_process.c文件(代码中数据库连接池和线程池中的个数是一样的)。
    2022-03-20 03:15:54下载
    积分:1
  • 检测软件
    A detection software
    2022-07-11 20:23:56下载
    积分:1
  • rn8209串口编程
    RN8209计量芯片,采集电压电流,计算电量,有功功率,无功功率,支持防窃电功能,rn8209串口通信,原厂提供的代码,可以下载直接使用。
    2022-02-28 19:54:49下载
    积分:1
  • 编写WINDOWS讯底层TCP
    编写WINDOWS通讯底层TCP-IP协议栈源代码.编译通过,好用.-WINDOWS communications underlying the preparation of TCP-IP protocol stack source code. Compilers passed, easy to use.
    2022-01-25 14:25:38下载
    积分:1
  • 这是一本使用opc客户端编程的简单实例并包含说明.入门级介绍...
    这是一本使用opc客户端编程的简单实例并包含说明.入门级介绍-This is a opc client-side programming using simple examples and includes instructions. Entry-level introduction
    2022-03-06 02:36:08下载
    积分:1
  • 微软亚洲研究院:可扩展视频在频率可选道传输中预编码OFDM与自适应向量道分配
    微软亚洲研究院:可扩展视频在频率可选信道传输中预编码OFDM与自适应向量信道分配-Microsoft Asia Research Institute : scalable video frequency in the channel transmission optional Pre-OFDM and adaptive vector Channel Allocation
    2022-01-20 23:38:10下载
    积分:1
  • PPP拨号上网协议栈,过串口编程,实现PPP拨号网络底层协议以及TCP/IP协议,主要用于GPRS,CDMA,电话拨号等领域。...
    PPP拨号上网协议栈,通过串口编程,实现PPP拨号网络底层协议以及TCP/IP协议,主要用于GPRS,CDMA,电话拨号等通信领域。-PPP dial-up Internet protocol stack, through serial programming, PPP dial-up network to achieve agreement and the underlying TCP/IP protocol, mainly for GPRS, CDMA, such as dial-up telephone communications.
    2022-03-20 08:56:59下载
    积分:1
  • opnet包交换实例
    它全部由我自己做的,为新的学习者,学习 OPNET 的一个例子。包括分组交换机基础
    2023-04-06 09:20:04下载
    积分:1
  • 详细介绍了数据结构中关于树和图的相关知识,并过C语言实现了关于树和图的个种操作,是学习C语言和数据机构的很好好材料...
    详细介绍了数据结构中关于树和图的相关知识,并通过C语言实现了关于树和图的个种操作,是学习C语言和数据机构的很好好材料-detailed data on the structure of the tree and plans related knowledge, and through C language on the map of the trees and the species of operation, is learning C language and the good data good materials
    2023-06-13 22:15:45下载
    积分:1
  • 这个是无线网卡WirelessLAN 测试程序NDIS
    这个是无线网卡WirelessLAN 测试程序NDIS-the wireless LAN test procedures NDIS WirelessLAN
    2022-07-11 15:41:30下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载