资源简介

描述: 1 采用C++语言 2 编译环境是code::blocks 3 使用的是非阻塞套接字 功能描述: 1 一个服务器对多个客户端之间进行通信 2 实现多线程开发,共包括接收数据线程、发送数据线程、主线程、接收客户端连接线程、清理资源线程。 其中主线程负责数据的输入,清理资源线程主要负责清理不需要的内存空间。 3 可以定向的向某个连接的客户端进行通信、同时也可以使用广播的方式向单个客户端发送数据

资源截图

代码片段和文件信息

#include “client.h“

//变量
SOCKET sClient; //套接字
HANDLE hThreadSend; //发送数据线程
HANDLE hThreadRecv; //接收数据线程
char    bufSend[MAX_NUM_BUF]; //发送数据缓冲区
BOOL    bSend = FALSE;                      //发送标记位
BOOL bConnecting; //与服务器的连接状态
HANDLE arrThread[2]; //子线程数组
CRITICAL_SECTION cs; //临界区对象,锁定bufSend

/**
 * 初始化
 */
BOOL InitClient(void)
{
//初始化全局变量
InitMember();

//创建SOCKET
if (!InitSockt())
{
return FALSE;
}

return TRUE;
}
/**
 * 初始化全局变量
 */
void InitMember(void)
{
InitializeCriticalSection(&cs);

sClient = INVALID_SOCKET; //套接字
    hThreadRecv = NULL; //接收数据线程句柄
hThreadSend = NULL; //发送数据线程句柄
bConnecting = FALSE; //为连接状态

    //初始化数据缓冲区
memset(bufSend 0 MAX_NUM_BUF);
memset(arrThread 0 2);
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-04-24 17:09  project\
     目录           0  2017-04-24 17:09  project\Client\
     目录           0  2017-04-24 17:09  project\Client\bin\
     目录           0  2017-04-24 17:09  project\Client\bin\Debug\
     文件     1029701  2017-04-20 21:31  project\Client\bin\Debug\client.exe
     文件        1132  2017-03-29 23:37  project\Client\client.cbp
     文件        5754  2017-04-20 21:31  project\Client\client.cpp
     文件        2698  2017-04-20 21:32  project\Client\client.depend
     文件        1011  2017-04-19 10:55  project\Client\client.h
     文件         690  2017-04-21 14:26  project\Client\client.layout
     文件         468  2017-04-20 00:06  project\Client\main.cpp
     目录           0  2017-04-24 17:09  project\Client\obj\
     目录           0  2017-04-24 17:09  project\Client\obj\Debug\
     文件       20572  2017-04-20 21:31  project\Client\obj\Debug\client.o
     文件       10402  2017-04-20 00:09  project\Client\obj\Debug\main.o
     文件         379  2017-04-24 17:09  project\readme.txt
     目录           0  2017-04-24 17:09  project\Server\
     目录           0  2017-04-24 17:09  project\Server\server\
     目录           0  2017-04-24 17:09  project\Server\server\bin\
     目录           0  2017-04-24 17:09  project\Server\server\bin\Debug\
     文件     1138142  2017-04-24 16:16  project\Server\server\bin\Debug\server.exe
     文件         384  2017-04-24 10:27  project\Server\server\main.cpp
     目录           0  2017-04-24 17:09  project\Server\server\obj\
     目录           0  2017-04-24 17:09  project\Server\server\obj\Debug\
     文件       10399  2017-04-24 16:16  project\Server\server\obj\Debug\main.o
     文件       20023  2017-04-24 16:16  project\Server\server\obj\Debug\sclient.o
     文件      150744  2017-04-24 16:16  project\Server\server\obj\Debug\server.o
     文件        4057  2017-04-24 15:32  project\Server\server\sclient.cpp
     文件        1796  2017-04-20 20:20  project\Server\server\sclient.h
     文件        1198  2017-04-16 09:55  project\Server\server\server.cbp
     文件        9527  2017-04-24 16:16  project\Server\server\server.cpp
............此处省略3个文件信息

评论

共有 条评论

相关资源