创建TcpClient
定义
命名空间:TouchSocket.Sockets
程序集:TouchSocket.dll
一、说明
TcpClient
是Tcp系客户端基类,他直接参与tcp的连接、发送、接收、处理、断开等,他的业务与服务器的TcpSessionClient
是一一对应的。
二、特点
- 简单易用。
- IOCP多线程。
- 内存池支持
- 高性能
- 适配器预处理,一键式解决分包、粘包、对象解析(如HTTP,Json)等。
- 超简单的同步发送、异步发送、接收等操作。
- 基于委托、插件驱动,让每一步都能执行AOP。
三、产品应用场景
- 所有Tcp基础使用场景:可跨平台、跨语言使用。
- 自定义协议解析场景:可解析任意数据格式的TCP数据报文。
四、可配置项
可配置项
SetMaxPackageSize
数据包最大值(单位:byte),默认1024×1024×10。该值会在适当时间,直接 作用DataHandlingAdapter.MaxPackageSize。
SetRemoteIPHost
链接到的远程IPHost,支持域名。支持类型:
- 使用IPv4,传入形如:127.0.0.1:7789的字符串即可。
- 使用IPv6,传入形如:[*::*]:7789的字符串即可。
- 使用域名,必须包含协议类型,形如:http://baidu.com或者https://baidu.com:80
- 使用IPv6域名,必须包含协议类型,形如:http://[*::*]:80
SetClientSslOption
客户端Ssl配置,为Null时则不启用。 注意,当RemoteIPHost使用https、wss的域名时,该配置会使用系统默认配置生效。
SetKeepAliveValue
为Socket设置的属性。 注意:该配置仅在window平台生效。
SetBindIPHost
绑定端口。
- 在UdpSessionBase中表示本地监听地址
- 在TcpClient中表示固定客户端端口号。