Как часть моего кода, я получаю разницу во времени между двумя полями объекта и помещаю ее в карту. Несколько раз в секунду создаются новые полезные нагрузки, и этот код запускается для создания новых карт.
if("deliver".equalsIgnoreCase(type) && "COURIER".equalsIgnoreCase(c))
attributes.put("pickupToDropTime", ChronoUnit.MINUTES.between(payload.getPickingAt().toInstant(),payload.getDeliveredAt().toInstant()));
Проблема в том, что код зависает после нескольких минут работы. Когда я заменяю часть значения константным значением, она работает нормально.
Я пытался использовать другие классы, связанные со временем, но все равно происходит
TimeUnit.MINUTES.toSeconds(payload.getDeliveredAt().getTime() - payload.getPickingAt().getTime())