此方法为DMTP客户端配置智能的连接检查策略,支持三级检查:
1. 在线状态检查 - 快速判断连接是否断开
2. 活动时间检查 - 避免频繁检查,优化性能
3. Ping心跳检查 - 主动验证连接可用性
public static void UseDmtpCheckAction<TClient>(
this ReconnectionOption<TClient> reconnectionOption,
TimeSpan? activeTimeSpan = null,
TimeSpan? pingTimeout = null
)
where TClient : IConnectableClient, IOnlineClient, IDependencyClient, IDmtpClient
<ExtensionAttribute>
Public Shared Sub UseDmtpCheckAction(Of TClient As {IConnectableClient, IOnlineClient, IDependencyClient, IDmtpClient}) (
reconnectionOption As ReconnectionOption(Of TClient),
Optional activeTimeSpan As TimeSpan? = Nothing,
Optional pingTimeout As TimeSpan? = Nothing
)[<ExtensionAttribute>]
static member UseDmtpCheckAction :
reconnectionOption : ReconnectionOption<'TClient> *
?activeTimeSpan : Nullable<TimeSpan> *
?pingTimeout : Nullable<TimeSpan>
(* Defaults:
let _activeTimeSpan = defaultArg activeTimeSpan null
let _pingTimeout = defaultArg pingTimeout null
*)
-> unit when 'TClient : IConnectableClient and IOnlineClient and IDependencyClient and IDmtpClient如果客户端在此时间内有活动,则跳过本次检查
默认值:3秒
建议范围:1-10秒
默认值:5秒
建议范围:3-10秒
| ArgumentNullException | 当reconnectionOption为时抛出 |
| ArgumentOutOfRangeException | 当activeTimeSpan小于等于零时抛出 |
| ArgumentOutOfRangeException | 当pingTimeout小于等于零时抛出 |