[Vortex] Flushing ANS on a channel
Skye
skye at F4.ca
Thu Oct 23 21:30:24 CEST 2008
Francis Brosnan Blazquez wrote:
>
>> I'm seeing in practice though, the the listener is receiving a variable
>> number of ANS messages when the initiator pumps out the ANS messages as
>> fast
>> as it can. I assumed vortex_channel_close() would block until all queued
>> messages were sent, but maybe that's not the case?
>
> Sure, that's the case. Calling to vortex_channel_close causes to wait
> for all pending replies to be received and pending replies to be sent
> (see __vortex_channel_close).
>
Actually, it doesn't seem to be. If I send ANS as fast as I can and then
send NUL like this:
for (i=0..100,000)
send_rpy_ans
send_rpy_nul
close_channel
Then the listener only receives about 12,000 ANS frames.. it loses over 80%
!!
However, if I drain the queue before sending the NUL, 100% of the frames are
received:
for (i=0..100,000)
send_rpy_ans
while (not channel_is_empty)
usleep(50)
send_rpy_nul
close_channel
Is this a bug or am I misunderstanding?
Thanks,
Skye
PS: increasing the window size improved performance dramatically, thanks for
the tip
--
View this message in context: http://n2.nabble.com/Flushing-ANS-on-a-channel-tp1365841p1369474.html
Sent from the Vortex -- Open Source BEEP implementation mailing list archive at Nabble.com.
More information about the Vortex
mailing list