Qt网络编程:QTcpServer

一、描述

TCP服务端。接收传入的 TCP 连接。

二、成员函数

1、[signal] void acceptError(QAbstractSocket::SocketError socketError)

当接受新连接导致错误时发出此信号。

 2、[signal] void newConnection()

每次有新连接可用时都会发出此信号。

3、void close()

关闭服务器。服务器将不再侦听传入连接。

4、QString errorString()

返回最后发生的错误的可读描述。

5、bool hasPendingConnections()

服务器是否有正在连接着的连接。

 6、bool isListening() 

服务器当前是否正在侦听传入连接。

7、bool listen(const QHostAddress &address = QHostAddress::Any, quint16 port = 0) 

告诉服务器侦听address和port 传入的连接。如果端口为 0,则自动选择一个端口。如果地址是 QHostAddress::Any,则服务器将侦听所有网络接口。

 8、int maxPendingConnections()

返的接受的最大连接数量。默认值为 30。

9、QTcpSocket * nextPendingConnection()

将下一个待处理的连接作为已连接的 QTcpSocket 对象返回。如果没有待处理的连接,该函数会返回 nullptr 。

10、void pauseAccepting()

暂停接受新连接。排队的连接将保留在队列中。

 11、void resumeAccepting()

恢复接受新连接。

12、QHostAddress serverAddress()

如果服务器正在侦听连接,则返回服务器的地址;否则返回 QHostAddress::Null。 

13、quint16 serverPort()

如果服务器正在侦听连接,则返回服务器的端口;否则返回 0。

14、QAbstractSocket::SocketError serverError()

返回最后发生的错误的错误代码。

 15、void setMaxPendingConnections(int numConnections)

设置接受的最大连接数量。停止接受新连接,但操作系统可能仍将它们保留在队列中。

16、bool waitForNewConnection(int msec = 0, bool *timedOut = nullptr) 

最多等待 msec 毫秒或直到传入连接可用。如果连接可用,则返回 true; 否则返回false。 如果操作超时并且timedOut 不是nullptr,*timedOut 将设置为true。

这是一个阻塞函数调用。 在单线程 GUI 应用程序中不建议使用它,因为整个应用程序将停止响应,直到函数返回。(非阻塞替代方法是连接到 newConnection() 信号。)

如果 msec 为 -1,则此函数不会超时。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值