WPF中使用定时器 DispatcherTimer 干TCP连接中的心跳 HeartBeat

WPF中使用定时器 DispatcherTimer 做TCP连接中的心跳 HeartBeat

开发过程中经常遇到定时触发的需求,如:TCP/IP连接中,使用心跳包保持连接或检测连接是否已经中断。

WPF中有多种定时器:

1.using System.Windows.Threading;

代码如下:

using System.Windows.Threading;

public partial class MainWindow : Window
{
  DispatcherTimer timerHeartBeat = new DispatcherTimer();

   public MainWindow()
   {
       timerHeartBeat.Tick += SendHeartBeatToServer; 
timerHeartBeat.Interval = TimeSpan.FromSeconds(60 * 5);
timerHeartBeat.Start(); }
private void SendHeartBeatToServer(object sender,EventArgs e) { string strToSend = "{CMD:'99999'}"; SendMsg(strToSend); } }

 

1楼vbfool
DispatcherTimer 是最不应该用在这里的定时器。
Re: lopengye
@vbfool,那应该用哪一个呀;)