Home / Function/ AutoScalingEventExecutorChooser() — netty Function Reference

AutoScalingEventExecutorChooser() — netty Function Reference

Architecture documentation for the AutoScalingEventExecutorChooser() function in AutoScalingEventExecutorChooserFactory.java from the netty codebase.

Function java CommonUtil Concurrent calls 2 called by 1

Entity Profile

Dependency Diagram

graph TD
  c4b40701_4326_dfe6_f06e_30628fb77b04["AutoScalingEventExecutorChooser()"]
  bb4797cf_7318_6bbb_4c87_1f53888dd980["AutoScalingEventExecutorChooser"]
  c4b40701_4326_dfe6_f06e_30628fb77b04 -->|defined in| bb4797cf_7318_6bbb_4c87_1f53888dd980
  2c8b0720_7b5e_8a9b_2d4b_ae591d1119a4["EventExecutorChooser()"]
  2c8b0720_7b5e_8a9b_2d4b_ae591d1119a4 -->|calls| c4b40701_4326_dfe6_f06e_30628fb77b04
  9df2e61e_7155_ff81_0d73_c8c8ed793a09["AutoScalingUtilizationMetric()"]
  c4b40701_4326_dfe6_f06e_30628fb77b04 -->|calls| 9df2e61e_7155_ff81_0d73_c8c8ed793a09
  0ad7a22b_c606_581b_a4ef_ecd45fd409ef["AutoScalingState()"]
  c4b40701_4326_dfe6_f06e_30628fb77b04 -->|calls| 0ad7a22b_c606_581b_a4ef_ecd45fd409ef
  style c4b40701_4326_dfe6_f06e_30628fb77b04 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

common/src/main/java/io/netty/util/concurrent/AutoScalingEventExecutorChooserFactory.java lines 161–180

        AutoScalingEventExecutorChooser(EventExecutor[] executors) {
            this.executors = executors;
            List<AutoScalingUtilizationMetric> metrics = new ArrayList<>(executors.length);
            for (EventExecutor executor : executors) {
                metrics.add(new AutoScalingUtilizationMetric(executor));
            }
            utilizationMetrics = Collections.unmodifiableList(metrics);
            allExecutorsChooser = DefaultEventExecutorChooserFactory.INSTANCE.newChooser(executors);

            AutoScalingState initialState = new AutoScalingState(maxChildren, 0L, executors);
            state = new AtomicReference<>(initialState);

            ScheduledFuture<?> utilizationMonitoringTask = GlobalEventExecutor.INSTANCE.scheduleAtFixedRate(
                    new UtilizationMonitor(), utilizationCheckPeriodNanos, utilizationCheckPeriodNanos,
                    TimeUnit.NANOSECONDS);

            if (executors.length > 0) {
                executors[0].terminationFuture().addListener(future -> utilizationMonitoringTask.cancel(false));
            }
        }

Domain

Subdomains

Frequently Asked Questions

What does AutoScalingEventExecutorChooser() do?
AutoScalingEventExecutorChooser() is a function in the netty codebase, defined in common/src/main/java/io/netty/util/concurrent/AutoScalingEventExecutorChooserFactory.java.
Where is AutoScalingEventExecutorChooser() defined?
AutoScalingEventExecutorChooser() is defined in common/src/main/java/io/netty/util/concurrent/AutoScalingEventExecutorChooserFactory.java at line 161.
What does AutoScalingEventExecutorChooser() call?
AutoScalingEventExecutorChooser() calls 2 function(s): AutoScalingState, AutoScalingUtilizationMetric.
What calls AutoScalingEventExecutorChooser()?
AutoScalingEventExecutorChooser() is called by 1 function(s): EventExecutorChooser.

Analyze Your Own Codebase

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

Try Supermodel Free