亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Java > 正文

Java Socket編程心跳包創建實例解析

2024-07-13 10:15:31
字體:
來源:轉載
供稿:網友

1.什么是心跳包?

心跳包就是在客戶端和服務器間定時通知對方自己狀態的一個自己定義的命令字,按照一定的時間間隔發送,類似于心跳,所以叫做心跳包。

用來判斷對方(設備,進程或其它網元)是否正常運行,采用定時發送簡單的通訊包,如果在指定時間段內未收到對方響應,則判斷對方已經離線。用于檢測TCP的異常斷開?;驹蚴欠掌鞫瞬荒苡行У呐袛嗫蛻舳耸欠裨诰€,也就是說,服務器無法區分客戶端是長時間在空閑,還是已經掉線的情況。所謂的心跳包就是客戶端定時發送簡單的信息給服務器端告訴它我還在而已。代碼就是每隔幾分鐘發送一個固定信息給服務端,服務端收到后回復一個固定信息如果服務端幾分鐘內沒有收到客戶端信息則視客戶端斷開。

比如有些通信軟件長時間不使用,要想知道它的狀態是在線還是離線就需要心跳包,定時發包收包。發包方:可以是客戶也可以是服務端,看哪邊實現方便合理,一般是客戶端。服務器也可以定時發心跳下去。一般來說,出于效率的考慮,是由客戶端主動向服務器端發包,而不是服務器向客戶端發??蛻舳嗣扛粢欢螘r間發一個包,使用TCP的,用send發,使用UDP的,用sendto發,服務器收到后,就知道當前客戶端還處于“活著”的狀態,否則,如果隔一定時間未收到這樣的包,則服務器認為客戶端已經斷開,進行相應的客戶端斷開邏輯處理。

2.以下是實現Java心跳包的簡單實例

a)服務器端Server.javascript/17508.html">java/255789.html">java

package cn.yw.socket.heart;import java.io.ObjectInput;import java.io.ObjectInputStream;import java.net.ServerSocket;import java.net.Socket;public class Server extends Thread{	private ServerSocket server = null;	Object obj = new Object();	@Override	  public void run() {		try{			while(true){				server = new ServerSocket(25535);				Socket client = server.accept();				synchronized(obj){					new Thread(new Client(client)).start();				}			}		}		catch(Exception e){			e.printStackTrace();		}	}	/**   * 客戶端線程   * @author USER   *   */	class Client implements Runnable{		Socket client;		public Client(Socket client){			this.client = client;		}		@Override		    public void run() {			try{				while(true){					ObjectInput in = new ObjectInputStream(client.getInputStream());					Entity entity = (Entity)in.readObject();					System.out.println(entity.getName());					System.out.println(entity.getSex());				}			}			catch(Exception e){				e.printStackTrace();			}		}	}	/**   *程序的入口main方法   * @param args   */	public static void main(String[] args){		new Server().start();	}}

b)客戶端Client.java

package cn.yw.socket.heart;public class Client extends Thread{	@Override	  public void run() {		try{			while(true){				ClientSender.getInstance().send();				synchronized(Client.class){					//          this.wait(5000);					Thread.sleep(2000);				}			}		}		catch(Exception e){			e.printStackTrace();		}	}	/**   * 程序的入口main方法   * @param args   */	public static void main(String[] args){		Client client = new Client();		client.start();	}}
package cn.yw.socket.heart;import java.io.ObjectOutputStream;import java.net.InetAddress;import java.net.Socket;public class ClientSender{	private ClientSender(){	}	Socket sender = null;	private static ClientSender instance;	public static ClientSender getInstance(){		if(instance==null){			synchronized(Client.class){				instance = new ClientSender();			}		}		return instance;	}	public void send(){		try{			sender = new Socket(InetAddress.getLocalHost(),25535);			while(true){				ObjectOutputStream out = new ObjectOutputStream(sender.getOutputStream());				Entity obj = new Entity();				obj.setName("syz");				obj.setSex("男");				out.writeObject(obj);				out.flush();				Thread.sleep(5000);			}		}		catch(Exception e){		}	}}

3.實體類Entity.java

package cn.yw.socket.heart;import java.io.Serializable;public class Entity implements Serializable{	private String name;	private String sex;	public String getName() {		return name;	}	public void setName(String name) {		this.name = name;	}	public String getSex() {		return sex;	}	public void setSex(String sex) {		this.sex = sex;	}}

總結

以上就是本文關于Java Socket編程心跳包創建實例解析的全部內容,希望對大家有所幫助。


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲国产精品电影在线观看| 久久久久久999| 欧美日韩国产激情| 亚洲经典中文字幕| 日韩国产精品亚洲а∨天堂免| 91精品国产电影| 亚洲а∨天堂久久精品9966| 亚洲精品综合精品自拍| 国产美女精品视频免费观看| 久久久久久12| 97在线视频观看| **欧美日韩vr在线| 亚洲偷熟乱区亚洲香蕉av| 精品视频—区二区三区免费| 亚洲一区中文字幕在线观看| 国产成人在线一区二区| 亚洲精品国精品久久99热一| 欧美野外wwwxxx| 国产精国产精品| 欧美夫妻性生活xx| 亚洲免费av片| 欧美激情在线观看| 国产成人+综合亚洲+天堂| 国产精品小说在线| 久久成人精品一区二区三区| 亚洲丝袜av一区| 久久影院免费观看| 日韩中文在线中文网在线观看| 国产999精品久久久影片官网| 4k岛国日韩精品**专区| 国产成人在线亚洲欧美| 在线亚洲欧美视频| 久久久99免费视频| 国产精品99免视看9| 日本伊人精品一区二区三区介绍| 97精品国产aⅴ7777| 777午夜精品福利在线观看| 亚洲人午夜精品| 久久久久国产精品一区| 亚洲美女福利视频网站| 日韩欧美成人区| 欧美xxxx18国产| 一夜七次郎国产精品亚洲| 91在线高清视频| 欧美黑人一级爽快片淫片高清| 成人h视频在线观看播放| 91精品视频在线看| 国产亚洲一区精品| 国产日本欧美一区| 久久精品视频在线| 欧美午夜精品在线| 国产一区二区三区久久精品| 中文精品99久久国产香蕉| 久久精品福利视频| 国产精品欧美久久久| 亚洲国产精品99久久| 国产91色在线|| 亚洲天天在线日亚洲洲精| 亚洲午夜色婷婷在线| 精品亚洲aⅴ在线观看| 日本不卡免费高清视频| 奇门遁甲1982国语版免费观看高清| 国产一区二区三区网站| 久久久亚洲天堂| 2019中文字幕在线免费观看| 伊人久久精品视频| 国产精品视频免费在线| 永久免费毛片在线播放不卡| 欧美激情精品久久久久久蜜臀| 成人免费在线视频网站| 国产精品视频久久久| 亚洲国产高清高潮精品美女| 久久免费国产视频| 亚洲午夜久久久久久久| 久久69精品久久久久久国产越南| 亚洲欧美在线免费| 亚洲第一精品自拍| 国产亚洲一区精品| 欧美韩国理论所午夜片917电影| 欧美国产日韩一区二区在线观看| 亚洲无亚洲人成网站77777| 国产一区私人高清影院| 欧美小视频在线观看| 成人女保姆的销魂服务| 国产一区二区三区视频免费| 亚洲黄色av女优在线观看| 久久久噜久噜久久综合| 午夜精品久久久久久久99热浪潮| 欧美日韩国产激情| 97人人做人人爱| 国产精品日韩专区| 伊人久久久久久久久久久久久| 国产午夜精品麻豆| 欧美成年人视频网站欧美| 亚洲福利视频久久| 日韩中文字幕免费视频| 日韩精品免费视频| 国产精品一区电影| 97超碰国产精品女人人人爽| 国产精品亚洲激情| 国产精品一香蕉国产线看观看| 国产精品久久久久久久久久免费| 992tv成人免费视频| 中文字幕日韩av| 成人免费福利视频| 欧美重口另类videos人妖| 亚洲另类欧美自拍| 亚洲一区999| 国产成人一区二区三区小说| 97超碰色婷婷| 亚洲人成免费电影| 日韩午夜在线视频| 国产女人精品视频| 国产一区二区三区在线视频| 最近2019免费中文字幕视频三| 欧美小视频在线| 大伊人狠狠躁夜夜躁av一区| 久久精品国产成人精品| 中文字幕日韩高清| 国产精品香蕉av| 精品视频9999| 麻豆成人在线看| 日本欧美国产在线| 国产精品久久久久久久久久东京| 美女啪啪无遮挡免费久久网站| 91网站在线免费观看| 亚洲国产成人精品久久| 大桥未久av一区二区三区| 久久久久国产精品一区| 日韩av在线最新| 亚洲无限av看| 久久久97精品| 日韩精品视频免费| 久久精品成人一区二区三区| 国产日韩欧美成人| 久久久久久香蕉网| 日韩视频免费在线观看| 91精品中国老女人| 欧美一区亚洲一区| 成人午夜两性视频| 欧美成人免费小视频| 国产日韩欧美黄色| 92看片淫黄大片看国产片| 2019日本中文字幕| 亚洲综合在线播放| 国产精品av在线播放| 法国裸体一区二区| 久久久久久久亚洲精品| 亚洲精品网站在线播放gif| 中文欧美日本在线资源| 日韩欧美在线播放| 色偷偷888欧美精品久久久| 亚洲精品国精品久久99热一| 成人久久久久爱| 欧美午夜精品久久久久久浪潮| 国产精品男女猛烈高潮激情| 成人亚洲综合色就1024| 国产精品视频导航| 91国内揄拍国内精品对白| 成人网欧美在线视频| 亚洲成人aaa| 亚洲激情第一页| 欧美在线免费观看| 亚洲第一区第二区|