You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

45 lines
1.6 KiB

.NET 8 WebSocket 传输接口提示词(IWebSocketTransport.cs)
定义 WebSocket 传输接口,抽象核心功能,支持生产环境的高性能和可维护性。文件建议控制在 200 行以内(预计 < 50
要求
接口职责:
定义核心操作:连接、发送消息(文本/二进制)、接收消息、关闭连接。
提供状态查询属性:连接状态、队列长度、最后心跳时间。
继承 IDisposable 支持资源释放。
方法和属性:
Task ConnectAsync(CancellationToken cancellationToken): 异步连接 WebSocket 服务器。
Task SendAsync<T>(T message, CancellationToken cancellationToken): 异步发送消息,支持泛型(文本/二进制)。
IAsyncEnumerable<T> ReceiveAsync<T>(CancellationToken cancellationToken): 异步接收消息流,支持泛型。
Task CloseAsync(CancellationToken cancellationToken): 异步关闭连接。
bool IsConnected { get; }: 当前连接状态。
int SendQueueLength { get; }: 发送队列长度。
DateTime? LastHeartbeat { get; }: 最后心跳时间。
设计原则:
依赖倒置:抽象传输行为,便于测试和替换。
单一职责:仅定义接口,不包含实现。
可扩展性:泛型方法支持文本/二进制消息。
生产环境考虑:
方法支持 CancellationToken 实现超时和取消。
属性提供状态监控,增强可观察性。
支持二进制消息,适配复杂场景。
输出要求:
文件名为 IWebSocketTransport.cs,位于 Interfaces 目录。
建议 < 50 包含详细注释
说明每个方法/属性的用途和预期行为。
不包含实现逻辑,仅定义接口。