net.i2p.router.transport.udp
Class PacketPusher
java.lang.Object
net.i2p.router.transport.udp.PacketPusher
- All Implemented Interfaces:
- Runnable
class PacketPusher
- extends Object
- implements Runnable
Blocking thread to grab new packets off the outbound fragment
pool and toss 'em onto the outbound packet queues.
Here we select which UDPEndpoint/UDPSender to send it out.
Method Summary |
void |
run()
|
void |
send(UDPPacket packet)
This sends it directly out, bypassing OutboundMessageFragments
and the PacketPusher. |
void |
shutdown()
|
void |
startup()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
PacketPusher
public PacketPusher(RouterContext ctx,
OutboundMessageFragments fragments,
List<UDPEndpoint> endpoints)
startup
public void startup()
shutdown
public void shutdown()
run
public void run()
- Specified by:
run
in interface Runnable
send
public void send(UDPPacket packet)
- This sends it directly out, bypassing OutboundMessageFragments
and the PacketPusher. The only queueing is for the bandwidth limiter.
BLOCKING if OB queue is full.
- Parameters:
packet
- non-null- Since:
- IPv6