Home · All Classes · Modules · QSS HELP · QSS 案例 · VER007 HOME |
该QTcpServer既可类提供了一个基于TCP的服务器。More...
继承QObject。
该QTcpServer既可类提供了一个基于TCP的服务器。
这个类使得它可以接受传入的TCP连接。您可以指定端口或有QTcpServer既可选择一个自动。你可以监听一个特定的地址或所有机器的地址。
Call listen( )使服务器侦听传入的连接。该newConnection( )信号,然后每个客户端连接到服务器时发出的。
Call nextPendingConnection( )接受挂起的连接作为一个连接QTcpSocket。该函数返回一个指针,指向一个QTcpSocket在QAbstractSocket.ConnectedState您可以使用与客户端通信。
如果发生错误,serverError()返回的错误的类型,并且errorString( )可以被调用来获取发生了什么可读的描述。
当侦听连接的地址和端口的服务器正在监听可作为serverAddress()和serverPort( ) 。
调用close( )使得QTcpServer既可停止侦听传入的连接。
虽然QTcpServer既可主要是设计用于与一个事件循环使用,它可以使用它没有之一。在这种情况下,您必须使用waitForNewConnection( ) ,这阻止,直到一个连接可用或者超时。
在Symbian ,它使用这个类的进程必须有NetworkServices平台的安全能力。如果客户端程序缺乏这种能力,它会导致恐慌。
平台的安全功能是通过添加TARGET.CAPABILITYqmake的变量。
该parent的说法,如果不是没有,原因self通过Qt的,而不是PyQt的拥有。
构造一个QTcpServer对象。
parent被传递到QObject构造函数。
See also listen()和setSocketDescriptor( ) 。
调用此函数由QTcpServer.incomingConnection( )来添加socket要挂起传入连接的列表。
Note:不要忘了从重新实现调用这个成员incomingConnection()如果你不想打破挂起连接机制。
此功能被引入Qt的4.7 。
See also incomingConnection( ) 。
关闭服务器。该服务器将不再侦听传入的连接。
See also listen( ) 。
返回上次发生错误的可读描述。
See also serverError( ) 。
返回True ,如果服务器有一个挂起的连接,否则返回False 。
See also nextPendingConnection()和setMaxPendingConnections( ) 。
这个虚函数被调用QTcpServer当一个新的连接可用。该socketDescriptor参数是为接受的连接的本地套接字描述符。
该基地实现创建一个QTcpSocket,设置套接字描述符,然后存储QTcpSocket在挂起连接的内部清单。最后newConnection()被发射。
重新实现这个函数来改变服务器的行为,当一个连接可用。
如果该服务器使用QNetworkProxy那么socketDescriptor可能与原生socket函数使用,并且只应使用QTcpSocket.setSocketDescriptor( ) 。
Note:如果你想处理的新传入的连接QTcpSocket在另一个线程对象,你必须将socketDescriptor传递给其他线程,并创建QTcpSocket有对象并使用其setSocketDescriptor()方法。
See also newConnection( )nextPendingConnection()和addPendingConnection( ) 。
返回True如果服务器当前正在侦听传入连接,否则返回False 。
See also listen( ) 。
告诉服务器监听的地址传入的连接address和端口port。如果port为0 ,端口会自动选择。如果address is QHostAddress.Any,服务器将监听所有网络接口。
成功时返回TRUE ,否则返回False 。
See also isListening( ) 。
返回未决接受的连接的最大数目。默认值是30 。
See also setMaxPendingConnections()和hasPendingConnections( ) 。
返回的连接下一个待连接QTcpSocket对象。
套接字被作为服务器的一个子创建的,这意味着它被自动删除时QTcpServer对象被销毁。它仍然是一个好主意,明确地删除的对象,当你用它做,以避免浪费内存。
如果这个函数被调用时,有没有挂起的连接则返回0 。
Note:返回QTcpSocket对象不能被用于从另一个线程。如果你想使用从另一个线程传入的连接,你需要重写incomingConnection( ) 。
See also hasPendingConnections( ) 。
返回此套接字的网络代理。默认情况下,QNetworkProxy.DefaultProxy被使用。
这个函数是Qt 4.1中引入。
See also setProxy()和QNetworkProxy。
返回如果服务器正在监听等待连接的服务器的地址,否则返回QHostAddress.Null。
See also serverPort()和listen( ) 。
所发生的最后一个错误返回一个错误代码。
See also errorString( ) 。
返回如果服务器侦听连接服务器的端口,否则返回0 。
See also serverAddress()和listen( ) 。
设置挂起接受的最大连接数numConnections。QTcpServer将接受不超过numConnections前传入的连接nextPendingConnection()被调用。默认情况下,该限制是30未决的连接。
客户可能仍然能够服务器后连接已经达到了挂起连接的最大数目(即,QTcpSocket依然能发出连接( )信号) 。QTcpServer将停止接受新的连接,但操作系统仍可能保持他们在队列中。
See also maxPendingConnections()和hasPendingConnections( ) 。
设置此套接字明确网络代理networkProxy。
要禁用使用代理的这个插座,使用QNetworkProxy.NoProxy代理类型:
server->setProxy(QNetworkProxy.NoProxy);
这个函数是Qt 4.1中引入。
See also proxy()和QNetworkProxy。
设置套接字描述符侦听传入的连接时,该服务器应该使用socketDescriptor。返回True如果套接字设置成功,否则返回False 。
该插座被假定为处于监听状态。
See also socketDescriptor()和isListening( ) 。
返回服务器用来侦听传入的指令,或-1,如果服务器没有监听本地套接字描述符。
如果服务器使用QNetworkProxy,返回的描述符可能无法与原生socket函数使用。
See also setSocketDescriptor()和isListening( ) 。
最多等待msec毫秒或直到传入的连接是可用的。返回True如果连接可用,否则返回False 。如果操作超时,timedOut不为0, *timedOut将被设置为True。
这是一个阻塞函数调用。它的使用disadvised在一个单线程的GUI应用程序,因为整个应用程序将停止响应,直到函数返回。当没有事件循环可用waitForNewConnection ( )是最有用。
非阻塞的替代方法是连接到newConnection()信号。
如果毫秒为-1 ,此功能将不会超时。
See also hasPendingConnections()和nextPendingConnection( ) 。
这是该信号的默认超载。
每当一个新的连接是可用的,这个信号被发射。
See also hasPendingConnections()和nextPendingConnection( ) 。
PyQt 4.10.3 for X11 | Copyright © Riverbank Computing Ltd and Nokia 2012 | Qt 4.8.5 |