ObjectBox 可分配 ID 的性能损失

Performance penalty of ObjectBox assignable ids

ObjectBox 文档建议对元素使用可自动分配的 long id,它甚至有一些基于它的检查:

By default object IDs are assigned by ObjectBox. For each new object, ObjectBox will assign an unused ID that is above the current highest ID value used in a box. For example, if there are two objects with ID 1 and ID 100 in a box the next object that is put will be assigned ID 101.

http://objectbox.io/documentation/introduction/#Object_ID_assignment

如果我们有自定义键,我们可以添加 @Id(assignable = true),它将使用给定的字段作为 id。

但是,我在某处读到它会增加一些性能开销,最好尽可能使用标准的自动递增的。我现在找不到来源,所以有人知道对经常更改的对象使用可分配 ID 是否可以吗?另外,ObjectBox有没有用到equals()hashCode()

我们使用可分配 id 的主要原因是能够 put 元素使用其自然 long id 而无需手动解析映射。

据我了解,根据官方文档和 Marcus Junginger(ObjectBox 的 CTO)的评论,当您使用可分配的 id 时,没有 性能损失。