Home / Function/ testSingleThreadEventExecutorAddTask() — netty Function Reference

testSingleThreadEventExecutorAddTask() — netty Function Reference

Architecture documentation for the testSingleThreadEventExecutorAddTask() function in NettyBlockHoundIntegrationTest.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  e7147b2d_39d9_4d42_fa62_e95cd65adc7e["testSingleThreadEventExecutorAddTask()"]
  746a8721_66e8_40dd_5dc1_a4c697fa84e4["NettyBlockHoundIntegrationTest"]
  e7147b2d_39d9_4d42_fa62_e95cd65adc7e -->|defined in| 746a8721_66e8_40dd_5dc1_a4c697fa84e4
  0fb26050_c5ed_dd6f_9851_8d166e59df1d["emulateContention()"]
  e7147b2d_39d9_4d42_fa62_e95cd65adc7e -->|calls| 0fb26050_c5ed_dd6f_9851_8d166e59df1d
  c8315b0b_9967_56bf_b629_70d0c3bcadbe["waitUntilContented()"]
  e7147b2d_39d9_4d42_fa62_e95cd65adc7e -->|calls| c8315b0b_9967_56bf_b629_70d0c3bcadbe
  b4dd56b0_ab61_9436_ce26_33399b139fb0["removeContention()"]
  e7147b2d_39d9_4d42_fa62_e95cd65adc7e -->|calls| b4dd56b0_ab61_9436_ce26_33399b139fb0
  style e7147b2d_39d9_4d42_fa62_e95cd65adc7e fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

transport-blockhound-tests/src/test/java/io/netty/util/internal/NettyBlockHoundIntegrationTest.java lines 158–188

    @Test
    @Timeout(value = 5000, unit = TimeUnit.MILLISECONDS)
    public void testSingleThreadEventExecutorAddTask() throws Exception {
        TestLinkedBlockingQueue<Runnable> taskQueue = new TestLinkedBlockingQueue<>();
        SingleThreadEventExecutor executor =
                new SingleThreadEventExecutor(null, new DefaultThreadFactory("test"), true) {
                    @Override
                    protected Queue<Runnable> newTaskQueue(int maxPendingTasks) {
                        return taskQueue;
                    }

                    @Override
                    protected void run() {
                        while (!confirmShutdown()) {
                            Runnable task = takeTask();
                            if (task != null) {
                                task.run();
                            }
                        }
                    }
                };
        taskQueue.emulateContention();
        CountDownLatch latch = new CountDownLatch(1);
        executor.submit(() -> {
            executor.execute(() -> { }); // calls addTask
            latch.countDown();
        });
        taskQueue.waitUntilContented();
        taskQueue.removeContention();
        latch.await();
    }

Domain

Subdomains

Frequently Asked Questions

What does testSingleThreadEventExecutorAddTask() do?
testSingleThreadEventExecutorAddTask() is a function in the netty codebase, defined in transport-blockhound-tests/src/test/java/io/netty/util/internal/NettyBlockHoundIntegrationTest.java.
Where is testSingleThreadEventExecutorAddTask() defined?
testSingleThreadEventExecutorAddTask() is defined in transport-blockhound-tests/src/test/java/io/netty/util/internal/NettyBlockHoundIntegrationTest.java at line 158.
What does testSingleThreadEventExecutorAddTask() call?
testSingleThreadEventExecutorAddTask() calls 3 function(s): emulateContention, removeContention, waitUntilContented.

Analyze Your Own Codebase

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

Try Supermodel Free