Home / Function/ testReadOutputStreamMultipleThreads() — netty Function Reference

testReadOutputStreamMultipleThreads() — netty Function Reference

Architecture documentation for the testReadOutputStreamMultipleThreads() function in AbstractByteBufTest.java from the netty codebase.

Function java Buffer Search called by 2

Entity Profile

Dependency Diagram

graph TD
  0d0688b3_1089_43ab_67de_a70a03962cf7["testReadOutputStreamMultipleThreads()"]
  6540f2d1_cdad_6705_dd1d_9a24e2e53242["AbstractByteBufTest"]
  0d0688b3_1089_43ab_67de_a70a03962cf7 -->|defined in| 6540f2d1_cdad_6705_dd1d_9a24e2e53242
  6f1ee4e4_37af_9d87_356e_ac27b92eac35["testDuplicateReadOutputStreamMultipleThreads()"]
  6f1ee4e4_37af_9d87_356e_ac27b92eac35 -->|calls| 0d0688b3_1089_43ab_67de_a70a03962cf7
  f701ec84_c71c_21dc_708f_78f10dfc31cc["testSliceReadOutputStreamMultipleThreads()"]
  f701ec84_c71c_21dc_708f_78f10dfc31cc -->|calls| 0d0688b3_1089_43ab_67de_a70a03962cf7
  style 0d0688b3_1089_43ab_67de_a70a03962cf7 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

buffer/src/test/java/io/netty/buffer/AbstractByteBufTest.java lines 2814–2852

    static void testReadOutputStreamMultipleThreads(
            final ByteBuf buffer, final byte[] expectedBytes, final boolean slice) throws Exception {
        final CountDownLatch latch = new CountDownLatch(60000);
        final CyclicBarrier barrier = new CyclicBarrier(11);
        for (int i = 0; i < 10; i++) {
            new Thread(new Runnable() {
                @Override
                public void run() {
                    while (latch.getCount() > 0) {
                        ByteBuf buf;
                        if (slice) {
                            buf = buffer.slice();
                        } else {
                            buf = buffer.duplicate();
                        }
                        ByteArrayOutputStream out = new ByteArrayOutputStream();

                        while (buf.isReadable()) {
                            try {
                                buf.readBytes(out, buf.readableBytes());
                            } catch (IOException e) {
                                // Never happens
                                return;
                            }
                        }
                        assertArrayEquals(expectedBytes, out.toByteArray());
                        latch.countDown();
                    }
                    try {
                        barrier.await();
                    } catch (Exception e) {
                        // ignore
                    }
                }
            }).start();
        }
        latch.await(10, TimeUnit.SECONDS);
        barrier.await(5, TimeUnit.SECONDS);
    }

Domain

Subdomains

Frequently Asked Questions

What does testReadOutputStreamMultipleThreads() do?
testReadOutputStreamMultipleThreads() is a function in the netty codebase, defined in buffer/src/test/java/io/netty/buffer/AbstractByteBufTest.java.
Where is testReadOutputStreamMultipleThreads() defined?
testReadOutputStreamMultipleThreads() is defined in buffer/src/test/java/io/netty/buffer/AbstractByteBufTest.java at line 2814.
What calls testReadOutputStreamMultipleThreads()?
testReadOutputStreamMultipleThreads() is called by 2 function(s): testDuplicateReadOutputStreamMultipleThreads, testSliceReadOutputStreamMultipleThreads.

Analyze Your Own Codebase

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

Try Supermodel Free