我有两个技术上相同的代码片段,但是第二个比第一个多花 1 秒。第一个在 6 秒内执行,第二个在 7 秒内执行。
Double yearlyEarnings = employmentService.getYearlyEarningForUserWithEmployer(userId, emp.getId());
CompletableFuture<Double> earlyEarningsInHomeCountryCF = currencyConvCF.thenApplyAsync(currencyConv -> {
return currencyConv * yearlyEarnings;
});
上一个需要 6s,下一个需要 7s 这是代码的链接
CompletableFuture<Double> earlyEarningsInHomeCountryCF = currencyConvCF.thenApplyAsync(currencyConv -> {
Double yearlyEarnings = employmentService.getYearlyEarningForUserWithEmployer(userId, emp.getId());
return currencyConv * yearlyEarnings;
});
请解释为什么与第一个代码相比,第二个代码始终多花费 1 秒(额外时间)
下面是方法getYearlyEarningForUserWithEmployer的签名。只是分享,但应该不会有任何影响
Double getYearlyEarningForUserWithEmployer(long userId, long employerId);