void (DebugProcess process, OverheadProducer producer, long hits, @Nullable Long overhead) { OverheadTimings timings = getTimings(process); Timings newTiming = new Timings(hits, overhead); timings.myLast10Elements.add(Pair.create(System.currentTimeMillis(), newTiming)); timings.myMap.merge(producer, newTiming, (old, value) -> { Long newTime = old.myTime; if (value.myTime != null) { newTime += value.myTime; } return new Timings(old.myHits + value.myHits, newTime); }); timings.myEventDispatcher.getMulticaster().timingAdded(producer); }