我正在做几个并行调用,它们都返回相同的protobuf GeneratedMessage(有些值不同)。在下一步中,我将构建一个新的GeneratedMessage实例,并逐个调用mergeFrom与所有并行输出。
// For example, consider a GeneratedMessage named Store
Store s1 = ... some process which return Store
Store s2 = ... some process which return Store
Store s3 = ... some process which return Store
Store.Builder result = Store.newBuilder();
result.mergeFrom(s1);
result.mergeFrom(s2);
result.mergeFrom(s3);
考虑存储重复字段,所有输出返回该字段的相同值列表。将List视为Store中的一个字段,它们都为此字段返回相同的3个值。当我合并所有这些输出时,最终结果具有该字段的重复值(总共9个值,每个值3个)。
无论如何我可以合并并保持独特的价值观吗?