Just saw something very odd.
The UDP callback routine that processes the incoming message contains a call to SetCtrlVal to post the number of bytes in the datagram into a numeric indicator on the GUI. I removed this call, thinking that maybe the time required to update the control was causing me to miss the next datagram. To my surprise, the number of messages per second being processed by the program went down (from about 230 to 205; actual number being received per second from VxWorks is 416). So I did the reverse and started lengthening the callback by performing the SetCtrlVal multiple times. With 12 SetCtrlVal calls, I can get the messages per second into the 350-360 range. If I add more than that, the rate starts going down again.
Why would making the callback routine longer result in the program missing fewer messages?