private AsyncTimelockService createRawAsyncTimelockService( String client, Supplier<ManagedTimestampService> timestampServiceSupplier) { ScheduledExecutorService reaperExecutor = new InstrumentedScheduledExecutorService( PTExecutors.newSingleThreadScheduledExecutor(new ThreadFactoryBuilder() .setNameFormat("async-lock-reaper-" + client + "-%d") .setDaemon(true) .build()), metricsManager.getRegistry(), "async-lock-reaper"); ScheduledExecutorService timeoutExecutor = new InstrumentedScheduledExecutorService( PTExecutors.newSingleThreadScheduledExecutor(new ThreadFactoryBuilder() .setNameFormat("async-lock-timeouts-" + client + "-%d") .setDaemon(true) .build()), metricsManager.getRegistry(), "async-lock-timeouts"); return new AsyncTimelockServiceImpl( AsyncLockService.createDefault(lockLog, reaperExecutor, timeoutExecutor), timestampServiceSupplier.get()); }