Drawpile 中文文档 下载 App

会话重置被中断 — 自动 Reset 到底是什么

什么是"会话重置"

Drawpile 服务器会定期自动创建会话历史快照——因为会话的完整操作历史是逐笔保存的,长时间的多人会话历史可能非常大(几 MB 到几十 MB),服务器内存压力大。

快照创建后,服务器会把快照之前的历史从内存里清理掉。旧版本做这件事时会强制中断所有客户端的连接(客户端被迫重连),用户会明显感觉到"会话被重置了一下"。

2.2.2 之后的改变

Drawpile 2.2.2 开始,自动快照不再打断会话——服务器在后台静默处理,客户端感知不到。只有手动触发的 Session Reset(Operator 用 Session → Reset)才会主动回退会话到某个快照点。

如果你还在经历会话被强制重置:

  1. 服务器(社区服务器或自建)可能用的是旧版本——联系社区服务器管理员或更新自建服务器
  2. 客户端可能没更新到 2.2.2+——更新 Drawpile

手动 Session Reset

这是 Operator 主动触发的——Session → Reset → 拖滑块选快照点 → Reset。

手动 Reset 会怎么样

Reset 之后怎么办

  1. 聊天窗口里会有一条系统消息说 Reset 成功
  2. 查看画布状态确认是不是回到了你要的时间点
  3. 如果回得太多(丢了不想丢的东西),别再 Reset,用 Force Undo 一笔一笔还原(虽然慢但不会再多丢)
  4. 建议 Reset 前所有人先把自己的图层手动保存一份(以防万一)

快照相关配置

Edit → Preferences → General → Canvas Snapshots:

快照多、间隔短 = Reset 能回到更远的时间点,但服务器内存占用更大。社区服务器限制了最大快照数量。

如果 Reset 之后画布一片空白

可能的原因:

救命步骤:

  1. 在聊天窗口问其他人"你们那边画布是什么样的"
  2. 如果其他人那边正常,可能你本地客户端没同步好 → 试试 Session → Reset 再回退一步,或让 Operator Force Undo 恢复图层
  3. 如果所有人都是空白 → 让 Operator 立刻用 Session Reset 往回退(可能快照点不对)

预防建议

多人会话中 Operator 可以主动: