// 
// Decompiled by Procyon v0.6.0
// 

package io.netty.util.concurrent;

import java.util.Objects;
import java.util.concurrent.TimeUnit;

final class SystemTicker implements Ticker
{
    static final SystemTicker INSTANCE;
    private static final long START_TIME;
    
    @Override
    public long initialNanoTime() {
        return SystemTicker.START_TIME;
    }
    
    @Override
    public long nanoTime() {
        return System.nanoTime() - SystemTicker.START_TIME;
    }
    
    @Override
    public void sleep(final long delay, final TimeUnit unit) throws InterruptedException {
        Objects.requireNonNull(unit, "unit");
        unit.sleep(delay);
    }
    
    static {
        INSTANCE = new SystemTicker();
        START_TIME = System.nanoTime();
    }
}
