Home / Function/ testNotSuspendedUntilScheduledTaskDidRun() — netty Function Reference

testNotSuspendedUntilScheduledTaskDidRun() — netty Function Reference

Architecture documentation for the testNotSuspendedUntilScheduledTaskDidRun() function in SingleThreadEventExecutorTest.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  b84ad0b5_80d6_fc5f_bbe8_3123af2a736a["testNotSuspendedUntilScheduledTaskDidRun()"]
  bbf4ea8d_698f_542a_1559_437b1b237a04["SingleThreadEventExecutorTest"]
  b84ad0b5_80d6_fc5f_bbe8_3123af2a736a -->|defined in| bbf4ea8d_698f_542a_1559_437b1b237a04
  28e9ff91_b16f_87e3_9960_0088813993be["SuspendingSingleThreadEventExecutor()"]
  b84ad0b5_80d6_fc5f_bbe8_3123af2a736a -->|calls| 28e9ff91_b16f_87e3_9960_0088813993be
  11b0d45f_e1b4_6dba_6d37_6c2f82f7e5c1["awaitStarted()"]
  b84ad0b5_80d6_fc5f_bbe8_3123af2a736a -->|calls| 11b0d45f_e1b4_6dba_6d37_6c2f82f7e5c1
  17ece757_7f91_5c24_4f58_cd664388b701["awaitRunnableExecution()"]
  b84ad0b5_80d6_fc5f_bbe8_3123af2a736a -->|calls| 17ece757_7f91_5c24_4f58_cd664388b701
  style b84ad0b5_80d6_fc5f_bbe8_3123af2a736a fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

common/src/test/java/io/netty/util/concurrent/SingleThreadEventExecutorTest.java lines 210–248

    @Test
    void testNotSuspendedUntilScheduledTaskDidRun() throws Exception {
        TestThreadFactory threadFactory = new TestThreadFactory();
        final SingleThreadEventExecutor executor = new SuspendingSingleThreadEventExecutor(threadFactory);

        final CountDownLatch latch = new CountDownLatch(1);
        // Schedule a task which is so far in the future that we are sure it will not run at all.
        Future<?> future = executor.schedule(() -> {
            try {
                latch.await();
            } catch (InterruptedException ignore) {
                // ignore
            }
        }, 100, TimeUnit.MILLISECONDS);
        TestThread currentThread = threadFactory.threads.take();
        // Let's wait until the thread is started
        currentThread.awaitStarted();
        currentThread.awaitRunnableExecution();
        latch.countDown();
        assertTrue(executor.trySuspend());

        // Now wait till the scheduled task was run
        future.sync();

        currentThread.join();

        // Should be suspended now, we should be able to also call trySuspend() again.
        assertTrue(executor.trySuspend());
        assertTrue(executor.isSuspended());

        executor.shutdownGracefully(0, 0, TimeUnit.MILLISECONDS).syncUninterruptibly();
        assertFalse(executor.isSuspended());
        assertTrue(executor.isShutdown());

        // Guarantee that al tasks were able to die...
        while ((currentThread = threadFactory.threads.poll()) != null) {
            currentThread.join();
        }
    }

Domain

Subdomains

Frequently Asked Questions

What does testNotSuspendedUntilScheduledTaskDidRun() do?
testNotSuspendedUntilScheduledTaskDidRun() is a function in the netty codebase, defined in common/src/test/java/io/netty/util/concurrent/SingleThreadEventExecutorTest.java.
Where is testNotSuspendedUntilScheduledTaskDidRun() defined?
testNotSuspendedUntilScheduledTaskDidRun() is defined in common/src/test/java/io/netty/util/concurrent/SingleThreadEventExecutorTest.java at line 210.
What does testNotSuspendedUntilScheduledTaskDidRun() call?
testNotSuspendedUntilScheduledTaskDidRun() calls 3 function(s): SuspendingSingleThreadEventExecutor, awaitRunnableExecution, awaitStarted.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free