@Override
    protected void processTaskTime(long taskExecuteTime) {
        if (executeTimeOut <= 0 || taskExecuteTime <= executeTimeOut) {
            return;
        }
        threadPoolCheckAlarm.asyncSendExecuteTimeOutAlarm(threadPoolId, taskExecuteTime, executeTimeOut, threadPoolExecutor);
    }
@Test
    public void testProcessTaskTime() {
        executor.register(plugin);

        executor.submit(() -> {
            ThreadUtil.sleep(100L);
        });
        executor.submit(() -> {
            ThreadUtil.sleep(300L);
        });

        // waiting for shutdown
        executor.shutdown();
        while (!executor.isTerminated()) {
        }
        Assert.assertEquals(2, testAlarm.getNumberOfAlarms().get());
    }