While it may supposedly trigger a "sendcomplete" event even before the send is complete, I've never had this happen. In fact in various software I've made before, my experimental protocols depend on the previous send being complete before sending a new packet, and it depends on the sendcomplete event to indicate such (by setting a globally declared boolean var to TRUE, from the sendcomplete event), and I've never had it fail before.