⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qnetbase.h

📁 BCB下的高效开发包。包含大并发的网络库
💻 H
字号:
#ifndef QNetBaseH
#define QNetBaseH
#include <string>
#include <vector>
//---------------------------------------------------------------------------
//注意,所有_Q*的Socket相关全局函数失败均不自动CloseSocket
//---------------------------------------------------------------------------
//连接结构
struct QConn
{
        std::string IpAddr;
        unsigned int Port;
};
//---------------------------------------------------------------------------
void _QClose(int Handle);
void _QShutdown(int Handle);
//---------------------------------------------------------------------------
void _QSetBlock(int Handle, bool Block);
//---------------------------------------------------------------------------
int _QCreateSocket();
bool _QConnect(int Handle, const std::string &IpAddr, unsigned int Port, bool Block);
//---------------------------------------------------------------------------
bool _QSpBind(int Handle, unsigned int Port);
bool _QBind(int Handle, unsigned int Port);
bool _QAccept(int Handle, int* Newint);
//---------------------------------------------------------------------------
bool _QSend(int Handle, std::string* Data);
bool _QSend(int Handle, const std::string& Data, int* lpSend);
bool _QRecv(int Handle,std::string* Data);
bool _QRecv(int Handle, std::string* Data, unsigned int MaxGet);
bool _QRecvSeg(int s, std::string* Data, const std::string &EndSign, int Max, int RecvSafeTimeOut);
//---------------------------------------------------------------------------
QConn _QGetRemote(int Handle);
QConn _QGetLocal(int Handle);
//---------------------------------------------------------------------------
bool _QSetDontLinger(int Handle);
//---------------------------------------------------------------------------
//超时设置
bool _QSetTimeOutIn(int Handle, int TimeOut);
bool _QSetTimeOutOut(int Handle, int TimeOut);
//---------------------------------------------------------------------------
//bool _QSelect(FD_SET* Read,FD_SET* Write,FD_SET* Except,int WaitMSec);
//---------------------------------------------------------------------------
//缓冲设置
void _QSetRecvBufSize(int Handle, unsigned int Byte);
void _QSetSendBufSize(int Handle, unsigned int Byte);
//---------------------------------------------------------------------------
//等待
bool _QWaitIn(int Handle, int MSec);
bool _QWaitOut(int Handle, int MSec);
bool _QWaitInOut(int Handle, int MSec);
//---------------------------------------------------------------------------
void _QSelectRead(const std::vector<int>& SourceSockets, std::vector<int>* pOutPut);
void _QSelectWrite(const std::vector<int>& SourceSockets, std::vector<int>* pOutPut);
void _QSelectExcept(const std::vector<int>& SourceSockets, std::vector<int>* pOutPut);

//---------------------------------------------------------------------------
std::string _QNameToIp(const std::string &HostName);
std::string _QIpToName(const std::string &Ip);
std::string _QGetHostName();
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -