Skip to content

Releases: GameFrameX/com.gameframex.unity.network

2.6.8

10 Jun 13:13

Choose a tag to compare

2.6.8 (2026-06-10)

Bug Fixes

  • network: 移除消息体长度为零的检查 (0b3bfac)

2.6.7

07 Jun 08:37

Choose a tag to compare

2.6.7 (2026-06-07)

Bug Fixes

  • 补全包规范文件(LICENSE/CHANGELOG/URL 字段/unity 字段) (02a2833)

2.6.6

05 Jun 13:11

Choose a tag to compare

2.6.6 (2026-06-05)

Bug Fixes

  • network: 网络事件重新创建 EventArgs 实例触发 (2e7f8a9)

2.6.5

02 Jun 09:53

Choose a tag to compare

2.6.5 (2026-06-02)

Bug Fixes

  • network: 恢复网络事件 EventArgs 的引用池回收 (f9f109e)

2.6.4

02 Jun 09:12

Choose a tag to compare

2.6.4 (2026-06-02)

Bug Fixes

  • network: 使用 TryDequeue 循环替代 ConcurrentQueue.Clear (8d3a1fe)

2.6.3

02 Jun 02:24

Choose a tag to compare

2.6.3 (2026-06-02)

Bug Fixes

  • network: 集合预分配初始容量避免首次扩容 (8fab110)

2.6.2

01 Jun 14:10

Choose a tag to compare

2.6.2 (2026-06-01)

Bug Fixes

  • network: m_PActive 和 PIsConnecting 标记 volatile 保证跨线程可见性 (857e22a)
  • network: RpcState 超时收集改为预分配实例字段消除每帧 GC (986acf6)
  • network: 收发计数器改用 Interlocked 操作修复多线程可见性 (ea45494)
  • network: 消息接收队列改为 ConcurrentQueue 修复线程安全问题 (cc363a7)

Performance Improvements

  • network: 集合预分配初始容量避免首次扩容 (9b1b590)

2.6.1

01 Jun 13:47

Choose a tag to compare

2.6.1 (2026-06-01)

Bug Fixes

  • network: Call 添加类型不匹配异常;移除 Send 重复 null 检查;HeartBeatInterval 添加负值校验 (375372b)
  • network: Close 使用 RpcState.Reset 替代 Dispose,允许重连后 RPC 正常工作 (2d0e7e2)
  • network: DefaultMessageSerializer 私有构造函数、IPacketHandler 文档、ProtoMessageHandler Obsolete 标记为错误、ProtoMessageIdHandler 清理 HeartBeatList、RpcMessageData 时间单位注释 (29a2883)
  • network: DefaultNetworkChannelHelper _event 改为实例字段;添加 null 检查 (052f27d)
  • network: DefaultPacketReceiveBodyHandler 检查 GetRespTypeById 返回 null (8bd3272)
  • network: DefaultPacketReceiveHeaderHandler 添加入参长度校验;重命名局部变量避免与属性混淆 (dd1577f)
  • network: DefaultPacketSendBodyHandler/CompressHandler/DecompressHandler 添加参数 null 检查 (f599f95)
  • network: DefaultPacketSendHeaderHandler 添加序列化结果 null 检查;m_Offset 改为局部变量防止重入 (ad5e664)
  • network: MessageHandlerAttribute 移除 ?. 静默吞异常;改用 Type 直接比较替代 FullName;修正 typo (42f5c22)
  • network: MessageSerializerRegistry._global 添加 volatile 保证多线程可见性 (eebe735)
  • network: NetworkClosedEventArgs.Clear 补充重置 Reason 和 ErrorCode,修复引用池脏数据 (958ca04)
  • network: NetworkComponent 事件处理器添加 m_EventComponent null 检查,防止 Awake/Start 间触发 NRE (4d839e4)
  • network: NetworkComponentInspector 访问 Socket 端点时添加 null 保护,防止 Inspector 崩溃 (8bb5f4d)
  • network: ReceiveState/SendState.Reset 添加 disposed 检查,防止 Dispose 后 NRE (45b8f38)
  • network: RpcMessageData.Dispose 取消等待中 TaskCompletionSource,防止 await 永久挂起 (489edec)
  • network: RpcState Dispose 时取消等待中 TCS;新增 Reset 方法支持重连场景 (b69157c)
  • network: RpcState.Call 处理 TryAdd 返回 false 的情况,修复 TOCTOU 问题 (c8cefc2)
  • network: SystemTcpNetworkChannel 修复接收失败处理、反序列化入队、连接事件顺序、bodyLength 校验 (6b743db)
  • network: Update 使用快照遍历防止回调中修改集合;移除 DestroyNetworkChannel 冗余 null 检查 (9c7c6d6)
  • network: WebSocket 连接超时保护、CTS 释放、async void 异常保护、连接事件顺序、重复计数修复 (e6dc9c4)
  • network: 使用专用锁对象替代 EventHandler 委托实例作为 lock 目标,修复多线程竞态 (b50b51f)
  • network: 将 ProcessHeartBeat 中 Close 调用移到锁外,避免嵌套锁死锁风险 (3594aea)

Performance Improvements

  • network: MessageHandlerAttribute.Invoke 预分配反射参数数组 (54de39a)
  • network: ProtoMessageHandler.GetHandlers 去掉 ToList 复制 (34c445d)
  • network: Update 使用预分配列表快照遍历,消除每帧 GC 分配 (dae5463)

2.6.0

29 May 06:37

Choose a tag to compare

2.6.0 (2026-05-29)

Features

  • serializer: 新增 IMessageSerializer 可插拔序列化接口 (8307320)

2.5.1

27 May 07:53

Choose a tag to compare

2.5.1 (2026-05-27)

Bug Fixes

  • network: 添加缺失的GameFrameX.Runtime命名空间引用 (8b136bd)