gpt4 book ai didi

java - 如何给文档中的每个对象一个唯一的ID?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:25:45 27 4
gpt4 key购买 nike

我正在制作一个位图编辑器,其中一个文档由多个层组成,每个层代表一个位图。与文档中当前存在的所有其他图层相比,每个图层必须具有唯一的 ID。我还需要考虑到我需要保存和加载文档以及层 ID。

我正在使用命令模式来存储对文档执行的操作,并且使用唯一 ID 来跟踪应在哪个层上执行操作。

目前,我只保留一个名为 X 的计数器,当创建一个新层时,其 ID 设置为 X,然后 X 递增。加载时,我需要确保将 X 设置为适当的数字,以便为新层提供唯一 ID,即我可以保存 X 的值并恢复它,或者根据加载的最大层 ID 设置 X。

鉴于 X 是一个 32 位数字,用户需要在 ID 开始被重用之前创建 4,294,967,296 个层来处理同一个文件,这将导致奇怪的行为。我应该实现更好的唯一 ID 系统还是通常就足够了?

我使用 Java,所以我可以使用 UUID 库,它根据标准算法创建 128 位唯一 ID。不过,这似乎有些矫枉过正。

是否有解决此类问题的通用方法?

最佳答案

这已经足够好了。以每秒 10 个新层的速度 24/365,这很愚蠢,它可以正常运行大约三年。

关于java - 如何给文档中的每个对象一个唯一的ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4029973/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com