求教c#多线程操作串口的方法

需求是这样的。
1.有一个UI的主线程 。里面需要调用 串口通信。往里面发送消息。
2.另一方满我需要循环去取该串口有没有新的消息发送过来。然后将发送过来的消息传递给UI的主线程。
c#新手。请教各位。该怎么实现?

用serialport控件,用不着多线程。当数据到达,会触发dataarrived事件,不需要轮询。