MCPcopy Create free account
hub / github.com/encodeous/nylon / flushOutboundQueue

Method flushOutboundQueue

polyamide/device/channels.go:123–137  ·  view source on GitHub ↗
(q *autodrainingOutboundQueue)

Source from the content-addressed store, hash-verified

121}
122
123func (device *Device) flushOutboundQueue(q *autodrainingOutboundQueue) {
124 for {
125 select {
126 case elemsContainer := <-q.c:
127 elemsContainer.Lock()
128 for _, elem := range elemsContainer.elems {
129 device.PutMessageBuffer(elem.buffer)
130 device.PutOutboundElement(elem)
131 }
132 device.PutOutboundElementsContainer(elemsContainer)
133 default:
134 return
135 }
136 }
137}

Callers 1

StartMethod · 0.80

Implementers 4

NativeTunpolyamide/tun/tun_linux.go
netTunpolyamide/tun/netstack/tun.go
chTunpolyamide/tun/tuntest/tuntest.go
fakeTUNDeviceSizedpolyamide/device/device_test.go

Calls 3

PutMessageBufferMethod · 0.95
PutOutboundElementMethod · 0.95

Tested by

no test coverage detected