存储时间戳
可以通过 setRecordTimestamp 启用时间戳记录,让每个 Change 都写入 Unix 时间戳。随后这些时间戳会保留在导出的 Update 或 Snapshot 中。
开启该功能会影响 Change 的合并行为:时间间隔过长的 Change 无法共享同一个时间戳。此时可以使用 setChangeMergeInterval 调整可合并的时间范围,默认值为 1,000,000(约等于 1000 秒)。
用户每次插入或删除都会生成一个
op,连续的多个op可以合并为一个较大的Change。Change会记录一个Timestamp,且每个Change只能关联一个时间戳。如果间隔太久就无法合并;但若因为毫秒级差异(例如按键间隔)就把每个 Change 都视为新的,又会显著增加 Change 的数量。因此用户可以根据需求自定义change merge interval。
需要注意,这些设置不会写入导出的 Update 或 Snapshot。如果需要自定义配置,必须在每次初始化 LoroDoc 时重新设置。未开启时间戳记录时,Timestamp 会默认取当前已知的最大值。