Serial port communication: polling serial port vs using serial port DataReceived event Serial port communication: polling serial port vs using serial port DataReceived event multithreading multithreading