java是否可以实现心跳的程序

java是否可以实现心跳的程序,第1张

java是可以实现心跳的程序的。

心跳顾名思义就是每隔一段时间执行,或者轮询查询状态,可以使用timer来实现,代码如下:

定时器可以实现

//1000毫秒,固定时间,卜晌乎每隔1秒钟执行一次actionPerformed方法

javax.swing.Timer clock = new javax.swing.Timer(1000,new ActionListener(){

 public void actionPerformed(ActionEvent e) {

    //执行心跳方法

  谨猜  /**...*/

   //调用其他方法

   /**...*/

  }

 

})

clock.start()

可以独立用个线型悉程管理,也可以直接写在主线程中

心跳是用于判断是否掉线的. 只要连着的纯兆时候就会持续每隔一小会发一个心跳包,服务器如果多久没收到就判断你已经掉线了. 之所以需要心跳包而不直接判断socket的联通状态,是因为在网络上有大量的连接缓存设备(比如电信局的交换袭逗机,比如一些硬件防火墙),这些设备会保存连接一段时间(几秒到十几分钟都有)举个例子 A客户端连接着B服务器 实际上是 A->中间的网络设备C->B如果A掉线了,实际上可能是A到C断了,也可能是C到B断了, 如果是A到C断了, 实际上B是做禅租无法知道的,因为对B来说A的连接(就是C)还连着. 心跳机制就解决了这个问题


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12523621.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存