Home / Function/ notifyListenerWithStackOverFlowProtection() — netty Function Reference

notifyListenerWithStackOverFlowProtection() — netty Function Reference

Architecture documentation for the notifyListenerWithStackOverFlowProtection() function in DefaultPromise.java from the netty codebase.

Function java CommonUtil Concurrent calls 2 called by 1

Entity Profile

Dependency Diagram

graph TD
  14ab6e09_d248_4939_59da_38dde9034740["notifyListenerWithStackOverFlowProtection()"]
  a0080a71_f091_42e0_8a20_424f0bf9d34a["DefaultPromise"]
  14ab6e09_d248_4939_59da_38dde9034740 -->|defined in| a0080a71_f091_42e0_8a20_424f0bf9d34a
  fa63c928_2111_9325_f025_617a6ab0b680["notifyListener()"]
  fa63c928_2111_9325_f025_617a6ab0b680 -->|calls| 14ab6e09_d248_4939_59da_38dde9034740
  8f88ad04_0acd_d483_f263_48a343c14b45["notifyListener0()"]
  14ab6e09_d248_4939_59da_38dde9034740 -->|calls| 8f88ad04_0acd_d483_f263_48a343c14b45
  6b17dbfa_0dba_6f1a_183b_cac1eee894d9["safeExecute()"]
  14ab6e09_d248_4939_59da_38dde9034740 -->|calls| 6b17dbfa_0dba_6f1a_183b_cac1eee894d9
  style 14ab6e09_d248_4939_59da_38dde9034740 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

common/src/main/java/io/netty/util/concurrent/DefaultPromise.java lines 527–550

    private static void notifyListenerWithStackOverFlowProtection(final EventExecutor executor,
                                                                  final Future<?> future,
                                                                  final GenericFutureListener<?> listener) {
        if (executor.inEventLoop()) {
            final InternalThreadLocalMap threadLocals = InternalThreadLocalMap.get();
            final int stackDepth = threadLocals.futureListenerStackDepth();
            if (stackDepth < MAX_LISTENER_STACK_DEPTH) {
                threadLocals.setFutureListenerStackDepth(stackDepth + 1);
                try {
                    notifyListener0(future, listener);
                } finally {
                    threadLocals.setFutureListenerStackDepth(stackDepth);
                }
                return;
            }
        }

        safeExecute(executor, new Runnable() {
            @Override
            public void run() {
                notifyListener0(future, listener);
            }
        });
    }

Domain

Subdomains

Called By

Frequently Asked Questions

What does notifyListenerWithStackOverFlowProtection() do?
notifyListenerWithStackOverFlowProtection() is a function in the netty codebase, defined in common/src/main/java/io/netty/util/concurrent/DefaultPromise.java.
Where is notifyListenerWithStackOverFlowProtection() defined?
notifyListenerWithStackOverFlowProtection() is defined in common/src/main/java/io/netty/util/concurrent/DefaultPromise.java at line 527.
What does notifyListenerWithStackOverFlowProtection() call?
notifyListenerWithStackOverFlowProtection() calls 2 function(s): notifyListener0, safeExecute.
What calls notifyListenerWithStackOverFlowProtection()?
notifyListenerWithStackOverFlowProtection() is called by 1 function(s): notifyListener.

Analyze Your Own Codebase

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

Try Supermodel Free