@Subscribe
    public synchronized void completeToKillLocalProcess(final KillLocalProcessCompletedEvent event) {
        ProcessOperationLockRegistry.getInstance().notify(event.getProcessId());
    }
@Test
    void assertCompleteToKillLocalProcess() {
        String processId = "foo_id";
        long startMillis = System.currentTimeMillis();
        Executors.newFixedThreadPool(1).submit(() -> {
            Awaitility.await().pollDelay(50L, TimeUnit.MILLISECONDS).until(() -> true);
            subscriber.completeToKillLocalProcess(new KillLocalProcessCompletedEvent(processId));
        });
        waitUntilReleaseReady(processId);
        long currentMillis = System.currentTimeMillis();
        assertThat(currentMillis, greaterThanOrEqualTo(startMillis + 50L));
        assertThat(currentMillis, lessThanOrEqualTo(startMillis + 5000L));
    }