java.lang.Object
net.i2p.router.JobImpl
net.i2p.router.tunnel.pool.TunnelPoolManager.RemoveSlowTunnelsJob
All Implemented Interfaces:
Job
Enclosing class:
TunnelPoolManager

private static class TunnelPoolManager.RemoveSlowTunnelsJobextends JobImpl
Periodically drops tunnels that fail the latency test.
  • Field Details

    • _mgr

      private final TunnelPoolManager _mgr
      The manager whose pools are checked.
    • STARTUP_DELAY

      private static final long STARTUP_DELAY
      The first pass runs 90 seconds after startup.
      See Also:
    • _runCount

      private static final AtomicInteger _runCount
      Passes run so far.
  • Constructor Details

    • RemoveSlowTunnelsJob

      public RemoveSlowTunnelsJob(RouterContext ctx, TunnelPoolManager mgr)
      Remove slow tunnels periodically, starting after the startup delay.
      Parameters:
      ctx - the router context
      mgr - the pool manager
  • Method Details

    • getName

      public String getName()
      The name of this job, as it appears in job statistics.
      Returns:
      the job name
    • runJob

      public void runJob()
      Remove slow tunnels and reschedule. Per-pool cost is bounded by TunnelPool.ensureSufficientTunnels() gates; this job itself runs on the configured interval (default 60s). No global collapse bypass: recovery paths (ExpireJob, buildComplete, emergency) already handle collapsed pools per-pool.