12-11-2005 12:47 PM
12-11-2005 09:09 PM
OK, never mind. Shortly afterwards I started noticing 'file not found' errors when I tried to use the Find UI Object functionality from the source window. I think my computer was smoking something. After a reboot the single frames are now being reported in single callbacks. All is well.
Orlan
12-12-2005 09:37 AM
12-12-2005 12:34 PM
Hi Mohan,
That's a good point. I already had that code written because there might be a full Ethernet frame that comes in (up to 1500 bytes for data) that would be larger than my 512 byte (actually 513 byte) buffer. I also have to strtok() my inbound buffer because there could also be, in a bad case, multiple smaller variable-length delimited messages queued up by the time I get around to ServerTCPRead(). I guess if there are lots and lots of tiny messages it might become more efficient to just poll the buffer with ...Read() using an async timer or something, instead of handling all of those callbacks? It would probably take a lot to hit that crossover point. Maybe when you get to overwelmingly high traffic volume on gigabit ethernet?
Orlan
12-13-2005 08:11 AM
Yes, the user can just poll for data by calling the CVI Read function at regular intervals. But there is no buffer exposed for polling. The lower level Windows sockets does not expose any buffer for reading and so the CVI TCP library also does not do this. So the user has to read the data from the connection into a user buffer and then do the search on the user's buffer.
12-14-2005 09:05 AM