StreamPeerTCP

继承: StreamPeer < RefCounted < Object

处理TCP连接的流对等体。

描述

处理TCP连接的流对等体。此对象可用于连接到TCP服务器,也可由TCP服务器返回。

注意:导出到Android时,在导出项目或使用一键部署之前,请确保启用Android导出预设中的INTERNET权限。否则,任何形式的网络通信都将被Android阻止。

方法


枚举

enum Status: 🔗

Status STATUS_NONE = 0

StreamPeerTCP的初始状态。这也是断开连接后的状态。

Status STATUS_CONNECTING = 1

表示正在连接到主机的StreamPeerTCP的状态。

Status STATUS_CONNECTED = 2

表示连接到主机的StreamPeerTCP的状态。

Status STATUS_ERROR = 3

表示StreamPeerTCP处于错误状态的状态。


方法说明

Error bind(port: int, host: String = "*") 🔗

打开TCP套接字,并将其绑定到指定的本地地址。

此方法一般不需要,仅用于强制后续调用connect_to_host()以使用指定的hostport作为源地址,这在某些NAT穿透技术中可能是需要的,或者在强制源网络接口时。


Error connect_to_host(host: String, port: int) 🔗

连接到指定的host: port对。如果有效,将解析主机名。成功时返回@GlobalScope.OK


void disconnect_from_host() 🔗

断开与主机的连接。


String get_connected_host() const 🔗

返回此对等方的IP。


int get_connected_port() const 🔗

返回此对等点的端口。


int get_local_port() const 🔗

返回此对等点绑定到的本地端口。


Status get_status() const 🔗

返回连接的状态,请参阅Status


Error poll() 🔗

轮询套接字,更新其状态。参见get_status()


void set_no_delay(enabled: bool) 🔗

如果enabledtrue,数据包将立即发送。如果enabledfalse(默认),数据包传输将延迟并使用Nagle算法组合。

注意:建议对发送大数据包或需要传输大量数据的应用程序禁用此功能,因为启用此功能会减少总可用带宽。