/** Invocation initiated by {@link #invokeFreeInboundBuffer0()} after freeing all inbound buffers. */
private void invokeFreeOutboundBuffer() {
EventExecutor executor = executor();
if (next == null) {
if (executor.inEventLoop()) {
pipeline.shutdownOutbound();
invokeFreeOutboundBuffer0();
} else {
executor.execute(new Runnable() {
@Override