日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國(guó)內(nèi)最全I(xiàn)T社區(qū)平臺(tái) 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁(yè) > 互聯(lián)網(wǎng) > Socket 長(zhǎng)連接 短連接 心跳 JAVA SOCKET編程

Socket 長(zhǎng)連接 短連接 心跳 JAVA SOCKET編程

來源:程序員人生   發(fā)布時(shí)間:2014-11-28 08:50:27 閱讀次數(shù):5205次

簡(jiǎn)單解釋就是:

短連接:建立連接,發(fā)送數(shù)據(jù)包,關(guān)閉連接

長(zhǎng)連接:建立連接,發(fā)送數(shù)據(jù)包,發(fā)送心跳包,發(fā)送數(shù)據(jù)包,發(fā)送心跳包,發(fā)送心跳包。。。。。。


所以又頻繁的數(shù)據(jù)收發(fā)的話,短連接會(huì)頻繁創(chuàng)建TCP連接,而對(duì)長(zhǎng)連接,則始終用的是同1個(gè)TCP連接


package com.tree.demo.socket; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.ServerSocket; import java.net.Socket; public class ServerSocketDemo { private static final int PORT = 1234; private static final int BUFFER_SIZE = 1024; public static void main(String[] args) { // TODO Auto-generated method stub try { ServerSocket ss = new ServerSocket(PORT); Socket s = ss.accept(); System.out.println("這是服務(wù)端,監(jiān)聽本機(jī)"+PORT+"端口"); byte[] recData = null; InputStream in = s.getInputStream(); OutputStream out = s.getOutputStream(); while(true) { recData = new byte[BUFFER_SIZE]; int r = in.read(recData); //int r = in.read(recData); if(r>⑴) { String data = new String(recData); if(data.trim().equals("over")) { s.close(); } System.out.println("讀取到客戶端發(fā)送的來數(shù)據(jù):"+data); out.write("這是服務(wù)端發(fā)給客戶真?zhèn)€數(shù)據(jù):".getBytes()); out.write(recData); }else { System.out.println("數(shù)據(jù)讀取終了!"); s.close(); System.exit(0); //ss.close(); } } } catch (IOException e) { e.printStackTrace(); } } }

以上這類服務(wù)端讀數(shù)據(jù)是阻塞式,如果客戶端沒有數(shù)據(jù)寫過來,服務(wù)端就會(huì)1直阻塞在那不動(dòng)

客戶端開啟1個(gè)telnet便可測(cè)試服務(wù)真?zhèn)€socket程序了,固然你也能夠自己寫1個(gè)socket客戶端,以下:

package socket; import java.io.IOException; import java.io.OutputStream; import java.net.Socket; import java.net.UnknownHostException; public class ClientSocketDemo { private static final String HOST = "192.168.8.14"; private static final int PORT = 1234; public static void main(String[] args) throws UnknownHostException, IOException { Socket client = new Socket(HOST, PORT); OutputStream out = client.getOutputStream(); try { while (true) { Thread.sleep(1000); System.out.println("發(fā)送心跳數(shù)據(jù)包"); out.write("send heart beat data package !".getBytes()); } } catch (Exception e) { e.printStackTrace(); out.close(); client.close(); } } }
同時(shí)這要是1個(gè)心跳的實(shí)例,心跳只要不出現(xiàn)異常的情況下,可以直接使用client連接發(fā)送數(shù)據(jù)包,不需要new socket新建連接了。



生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 日韩欧美大片 | 亚洲精品一区二区三区中文字幕 | 国产精品18久久久 | 蜜桃二区 | 色婷婷亚洲精品 | 久久久精品美女 | 精品网站999www | 欧美精品在线一区二区三区 | 亚洲一区二区三区免费视频 | 亚洲另类xxxx | 九一在线观看 | 欧美一区二区三区的 | 欧美亚洲三级 | 亚洲一区在线视频 | 大桥未久中文字幕 | 能免费看av的网站 | 国产在线精品一区 | 国产毛片网 | 日韩精品免费在线 | 精品国产91久久久久久老师 | 亚洲欧美日韩天堂 | 欧美激情精品久久久久久久久久 | 永久免费精品视频 | 波多野在线视频 | 日韩欧美在线观看视频网站 | 国产精品久久久久久久久免费丝袜 | 男女av | 欧美天堂在线 | 91久久久久久久久久 | 欧美理论在线观看 | 中文字幕福利 | 久久久一二三 | 黄网址在线 | 九九资源站 | 日韩精品无码一区二区三区 | 国内久久 | 亚州av在线 | 午夜日韩免费视频 | 久久这里都是精品 | 中文日产幕无线码一二三四区 | 国产精品久久国产三级国电话系列 |