flush() — netty Function Reference
Architecture documentation for the flush() function in AbstractHttp2StreamChannel.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 17bb5ba9_6675_72af_80ec_e5f5d89f1f8c["flush()"] 2656dcfe_5cdb_7c7d_bc25_312393fe2e05["Http2ChannelUnsafe"] 17bb5ba9_6675_72af_80ec_e5f5d89f1f8c -->|defined in| 2656dcfe_5cdb_7c7d_bc25_312393fe2e05 62092c57_2b76_f9d6_7477_f45361d6edeb["Channel()"] 62092c57_2b76_f9d6_7477_f45361d6edeb -->|calls| 17bb5ba9_6675_72af_80ec_e5f5d89f1f8c c5f2249b_75fa_04ed_b617_86931903504c["flush0()"] c5f2249b_75fa_04ed_b617_86931903504c -->|calls| 17bb5ba9_6675_72af_80ec_e5f5d89f1f8c 215b8316_feb5_500b_88f8_49eff0eac336["close()"] 215b8316_feb5_500b_88f8_49eff0eac336 -->|calls| 17bb5ba9_6675_72af_80ec_e5f5d89f1f8c 8c7ec287_e512_c36c_39d6_33286068a273["doBeginRead()"] 8c7ec287_e512_c36c_39d6_33286068a273 -->|calls| 17bb5ba9_6675_72af_80ec_e5f5d89f1f8c 4719f032_82eb_05bb_5db2_1ba1daf73d78["updateLocalWindowIfNeededAndFlush()"] 4719f032_82eb_05bb_5db2_1ba1daf73d78 -->|calls| 17bb5ba9_6675_72af_80ec_e5f5d89f1f8c 4373f9ff_b341_55e0_625c_45e60ac17922["notifyReadComplete()"] 4373f9ff_b341_55e0_625c_45e60ac17922 -->|calls| 17bb5ba9_6675_72af_80ec_e5f5d89f1f8c 5ca6305e_9bed_80cc_f434_630ca5d3db99["write()"] 17bb5ba9_6675_72af_80ec_e5f5d89f1f8c -->|calls| 5ca6305e_9bed_80cc_f434_630ca5d3db99 a362ae20_c4ae_22d2_1fdc_4d606b3e40cd["isParentReadInProgress()"] 17bb5ba9_6675_72af_80ec_e5f5d89f1f8c -->|calls| a362ae20_c4ae_22d2_1fdc_4d606b3e40cd c5f2249b_75fa_04ed_b617_86931903504c["flush0()"] 17bb5ba9_6675_72af_80ec_e5f5d89f1f8c -->|calls| c5f2249b_75fa_04ed_b617_86931903504c style 17bb5ba9_6675_72af_80ec_e5f5d89f1f8c fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
codec-http2/src/main/java/io/netty/handler/codec/http2/AbstractHttp2StreamChannel.java lines 1165–1179
@Override
public void flush() {
// If we are currently in the parent channel's read loop we should just ignore the flush.
// We will ensure we trigger ctx.flush() after we processed all Channels later on and
// so aggregate the flushes. This is done as ctx.flush() is expensive when as it may trigger an
// write(...) or writev(...) operation on the socket.
if (!writeDoneAndNoFlush || isParentReadInProgress()) {
// There is nothing to flush so this is a NOOP.
return;
}
// We need to set this to false before we call flush0(...) as ChannelFutureListener may produce more data
// that are explicit flushed.
writeDoneAndNoFlush = false;
flush0(parentContext());
}
Domain
Subdomains
Called By
Source
Frequently Asked Questions
What does flush() do?
flush() is a function in the netty codebase, defined in codec-http2/src/main/java/io/netty/handler/codec/http2/AbstractHttp2StreamChannel.java.
Where is flush() defined?
flush() is defined in codec-http2/src/main/java/io/netty/handler/codec/http2/AbstractHttp2StreamChannel.java at line 1165.
What does flush() call?
flush() calls 3 function(s): flush0, isParentReadInProgress, write.
What calls flush()?
flush() is called by 6 function(s): Channel, close, doBeginRead, flush0, notifyReadComplete, updateLocalWindowIfNeededAndFlush.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free