Home / Function/ run() — netty Function Reference

run() — netty Function Reference

Architecture documentation for the run() function in ScheduledFutureTask.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  991bb33b_0258_365f_421b_3989a36f1fcf["run()"]
  a6be752b_e28c_a29a_8f7f_703050f9d384["ScheduledFutureTask"]
  991bb33b_0258_365f_421b_3989a36f1fcf -->|defined in| a6be752b_e28c_a29a_8f7f_703050f9d384
  768f890e_303c_d5b1_6670_58e2362d273e["delayNanos()"]
  991bb33b_0258_365f_421b_3989a36f1fcf -->|calls| 768f890e_303c_d5b1_6670_58e2362d273e
  style 991bb33b_0258_365f_421b_3989a36f1fcf fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

common/src/main/java/io/netty/util/concurrent/ScheduledFutureTask.java lines 145–182

    @Override
    public void run() {
        assert executor().inEventLoop();
        try {
            if (delayNanos() > 0L) {
                // Not yet expired, need to add or remove from queue
                if (isCancelled()) {
                    scheduledExecutor().scheduledTaskQueue().removeTyped(this);
                } else {
                    scheduledExecutor().scheduleFromEventLoop(this);
                }
                return;
            }
            if (periodNanos == 0) {
                if (setUncancellableInternal()) {
                    V result = runTask();
                    setSuccessInternal(result);
                }
            } else {
                // check if is done as it may was cancelled
                if (!isCancelled()) {
                    runTask();
                    if (!executor().isShutdown()) {
                        if (periodNanos > 0) {
                            deadlineNanos += periodNanos;
                        } else {
                            deadlineNanos = scheduledExecutor().getCurrentTimeNanos() - periodNanos;
                        }
                        if (!isCancelled()) {
                            scheduledExecutor().scheduleFromEventLoop(this);
                        }
                    }
                }
            }
        } catch (Throwable cause) {
            setFailureInternal(cause);
        }
    }

Domain

Subdomains

Calls

Frequently Asked Questions

What does run() do?
run() is a function in the netty codebase, defined in common/src/main/java/io/netty/util/concurrent/ScheduledFutureTask.java.
Where is run() defined?
run() is defined in common/src/main/java/io/netty/util/concurrent/ScheduledFutureTask.java at line 145.
What does run() call?
run() calls 1 function(s): delayNanos.

Analyze Your Own Codebase

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

Try Supermodel Free