[PD-dev] mrpeach/tcpserver question
Ivica Ico Bukvic
ico at vt.edu
Sat May 1 16:07:31 CEST 2010
> OK, thanks for finding that. I fixed it in svn, the way it is written
> above will not set SO_REUSEADDR because the parameter is false (0).
> Also
> it was #ifdeffed out except for IRIX. You should try an autobuild from
> tomorrow.
I'll definitely try it out but I am not convinced this is the problem as my port timeout adjustments system-side had no effect suggesting that the port was stuck in a different mode than TIME_WAIT. Could it be something wrong with the destructor?
> Yes, that's because in tcp broadcast it sends individual packets to each
> client, which can eat up time. I suggest using udp for data and tcp for
> control, as udp broadcast will send one packet to everyone on the
> subnet.
I understand that but we cannot use UDP as that one at times does not go through when there is a lot of traffic (and we do use UDP for non-critical monitoring in addition to TCP). Last thing I want to have happen is someone missing a critical cue due to dropped UDP packet (which in our case happens a lot--before we switched to TCP I had to press button for the same cue 3-4 times before it was actually received by everyone).
Couldn't the broadcast command spawn a separate thread that then services all clients to avoid xruns?
> Not sure which version you have, but try it now:
> http://pure-data.svn.sourceforge.net/viewvc/pure-
> data/trunk/externals/mrpeach/net/tcpserver.c?view=log
Will do.
Many thanks for your help!
Best wishes,
Ico
More information about the Pd-dev
mailing list