一款简单易用的基础网络通讯组件库。

ITcpClient 接口

定义了一个接口,该接口继承了多个与TCP客户端相关的接口,用于统一和扩展TCP客户端的功能。

Definition

命名空间: TouchSocket.Sockets
程序集: TouchSocket (在 TouchSocket.dll 中) 版本:3.0.0+ccaf96084d09f972257496d1dd63b8ba3c1e44f0
C#
public interface ITcpClient : ITcpSession, 
	IClient, IDependencyObject, IDisposableObject, IDisposable, ILoggerObject, 
	IResolverConfigObject, IConfigObject, IPluginObject, IResolverObject, IOnlineClient, 
	IClosableClient, ISetupConfigObject, ITcpConnectableClient, IConnectableClient, IClientSender, 
	ISender, IRequestInfoSender, IReceiverClient<IReceiverResult>
Implements
IDisposable, IConfigObject, IDependencyObject, IDisposableObject, ILoggerObject, IPluginObject, IResolverConfigObject, IResolverObject, ISetupConfigObject, IClient, IClientSender, IClosableClient, IConnectableClient, IOnlineClient, IReceiverClientIReceiverResult, IRequestInfoSender, ISender, ITcpConnectableClient, ITcpSession

属性

Closed 断开连接
Closing 即将断开连接(仅主动断开时有效)。

Config 配置项
(继承自 IConfigObject。)
Connected 连接事件处理程序,用于处理与 ITcpClient 接口相关的连接事件
Connecting 准备连接的时候
DataHandlingAdapter 数据处理适配器
(继承自 ITcpSession。)
DisposedValue 标识该对象是否已被释放
(继承自 IDisposableObject。)
IP IP地址
(继承自 ITcpSession。)
IsClient 表示是否为客户端终端。当为时,表示是客户端。否则为服务器通讯终端。
(继承自 IClient。)
LastReceivedTime 最后一次接收到数据的时间
(继承自 IClient。)
LastSentTime 最后一次发送数据的时间
(继承自 IClient。)
Logger 日志记录器
(继承自 ILoggerObject。)
MainSocket 主通信器
(继承自 ITcpSession。)
Online 判断是否在线
(继承自 IOnlineClient。)
PluginManager 插件管理器
(继承自 IPluginObject。)
Port 端口号
(继承自 ITcpSession。)
Protocol 终端协议
(继承自 IClient。)
Received 接收到数据
RemoteIPHost 获取远程主机信息。
(继承自 ITcpConnectableClient。)
Resolver 获取解析器实例。
(继承自 IResolverObject。)
UseSsl 使用Ssl加密
(继承自 ITcpSession。)

方法

ClearReceiver 移除同步数据接收器
(继承自 IReceiverClientTResult。)
CloseAsync 关闭客户端。
(继承自 IClosableClient。)
ConnectAsync 异步连接
(继承自 IConnectableClient。)
CreateReceiver 获取一个同步数据接收器
(继承自 IReceiverClientTResult。)
DisposePerforms application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
(继承自 IDisposable。)
GetValueTValue 获取依赖注入的值,当没有注入时,会返回默认行为的值。
(继承自 IDependencyObject。)
HasValueTValue 判断在当前对象中是否有已设置的属性值。
(继承自 IDependencyObject。)
RemoveValueTValue 移除属性值。
(继承自 IDependencyObject。)
SendAsync(IListArraySegmentByte) 异步组合发送数据。

该发送会经过适配器封装,具体封装内容由适配器决定。


(继承自 IClientSender。)
SendAsync(IRequestInfo) 异步发送数据。

该发送会经过适配器封装,具体封装内容由适配器决定。


(继承自 IRequestInfoSender。)
SendAsync(ReadOnlyMemoryByte) 异步发送数据。

该发送会经过适配器封装,具体封装内容由适配器决定。


(继承自 ISender。)
SetupAsync 异步配置设置项
(继承自 ISetupConfigObject。)
SetValueTValue 设置依赖注入的值,如果值已经存在,将被覆盖。
(继承自 IDependencyObject。)
TryGetValueTValue 尝试获取依赖注入的值,当没有注入时,会返回
(继承自 IDependencyObject。)
TryRemoveValueTValue 尝试重置属性值,如果没有这个值,则返回
(继承自 IDependencyObject。)

扩展方法

CloseWithTLV 使用TLV格式关闭TCP会话
(由 TLVClientExtensions 定义。)
CloseWithTLVAsync 发送TLV的Close报文,然后关闭当前客户端
(由 TLVClientExtensions 定义。)
Connect 同步执行连接操作。
(由 ClientExtension 定义。)
ConnectAsync 异步连接
(由 ClientExtension 定义。)
CreateWaitingClient 为指定的 TCP 客户端创建一个等待客户端实例。
(由 WaitingClientExtension 定义。)
CreateWaitingClient 为 ITcpClient 类型的客户端创建一个等待客户端。
(由 WaitingClientExtension 定义。)
PingWithTLV 发送Tag为Ping的报文,然后等待Pong回应。

当适配器不是TLVDataHandlingAdapter时,会抛出异常。


(由 TLVClientExtensions 定义。)
SafeDispose 安全性释放(不用判断对象是否为空)。不会抛出任何异常。

内部会判断DisposedValue的值,如果为,则不会再执行Dispose


(由 SystemExtension 定义。)
SafeDispose 安全性释放(不用判断对象是否为空)。不会抛出任何异常。
(由 SystemExtension 定义。)
Setup 同步配置方法。 使用给定的配置对象进行设置。
(由 SetupConfigObjectExtension 定义。)
TryConnect 同步执行连接操作。不会抛出异常。
(由 ClientExtension 定义。)
TryConnectAsync 尝试连接。不会抛出异常。
(由 ClientExtension 定义。)

参见