fix(tcp): 会话断开时不再访问已释放的 socket,确保 Disconnected 事件送达
Publish UPM package / publish (push) Successful in 3s
Publish NuGet packages / publish (push) Successful in 1h19m42s

- 服务端/客户端接收循环收尾改用连接时记录的远端地址
- 客户端本地 Stop 导致的读取中断按正常关闭处理
- 观察 Stop 后挂起的 accept 任务异常
- 版本 0.4.4
This commit is contained in:
cneicy committed 2026-11-10 18:36:30 +08:00
1 parent e36917db31
commit 401cecfc14
5 files changed
+62 -14

No files matched your search

+8
View File
@@ -2,6 +2,14 @@
本文件记录 `ShrinkNetwork` 在当前工作区中的包内变更。
## [0.4.4] - 2026-11-10
### Fixed
- TCP 服务端:会话接收循环结束时不再读取已释放 socket 的 `RemoteEndPoint`,改用接入时记录的地址;此前客户端主动断开会抛出 `ObjectDisposedException`,`Disconnected` 事件丢失,上层仍向已断开会话发送并报 `Session N is not connected`。
- TCP 客户端:接收循环收尾同样改用连接时记录的地址,本地 `Stop()` 导致的读取中断按正常关闭处理,不再向 Unity 日志抛出 `ObjectDisposedException`。
- TCP 服务端:`Stop()` 后挂起的 accept 任务异常被观察,不再产生未观察的 `SocketException`。
## [0.2.0] - 2026-05-18
### Changed