public long remainingMs() {
        return Math.max(0, deadlineMs - currentTimeMs);
    }
Get the remaining time in milliseconds until the timer expires. Like {@link #currentTimeMs},
this depends on the cached current time, so the returned value will not change until the timer
has been updated using one of the {@link #update()} methods or {@link #sleep(long)}.

@return The cached remaining time in milliseconds until timer expiration
s3stream/src/main/java/com/automq/stream/utils/Timer.java