SetNTotal

API定义

virtual APP_ERROR SetNTotal(int n) = 0;

功能描述

为外部提供调整“ntotal”计数的接口。

每次增加底库向量后,Index内部虽然会根据最大插入下标更新“ntotal”值,但并没有记录 [0, ntotal] 范围内哪些区域是无效的空间,因此RemoveFeatures操作没有改变“ntotal”的值。用户如果在外部明确记录了增删操作后的最大底库索引位置,可以手动设置“ntotal”,这样可以在可控范围内减少算子的计算量,以提高接口性能。

例如:当前插入100条向量,底库索引为0~99时,ntotal = 100,执行删除索引为80~90的底库,此时Index内部“ntotal”保持不变,只能设为 [ntotal, capacity]之间的值,再次执行删除索引为90~99的底库,此时可以手动把“ntotal”设置为[80, capacity] 之间的值,设置为“80”时,可以使参与比对的底库数据量有效减少20条。

输入

int n:由用户在业务面管理的最大底库的索引加1。

输出

返回值

APP_ERROR:调用返回状态,具体请参见接口调用返回值参考

约束说明

入参由该类的实现类约束。