【发布时间】:2016-01-27 02:30:48
【问题描述】:
ComparisonResults comparisonResults = requestsList
.parallelStream()
.map(item -> getResponse(item))
.map(item -> compareToBl(item))
.reduce(new ComparisonResults(), (result1, result2) ->
{
result1.addSingleResult(result2);
return result1;
});
什么时候
private ComparisonResults compareToBl(CompleteRoutingResponseShort completeRoutingResponseShortFresh) {
...
ComparisonResults comparisonResults = new ComparisonResults();
...
return comparisonResults;
}
但是当我调试时:
.reduce(new ComparisonResults(), (result1, result2) ->
{
result1.addSingleResult(result2);
return result1;
});
我看到 result1 和 result2 总是同一个对象(对象 id 在
想法)
result1 等于 result2
【问题讨论】:
-
为什么会有这样的问题?
-
我想将不同的对象累积成一个对象。与自己不一样
标签: java multithreading concurrency java-stream reduce