亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? testb1.java

?? Java下Comet的實現框架Pushlet例子。 實現實時推送數據到客戶端。 服務器每隔30-500MS產生一個隨機數
?? JAVA
字號:
package hfut.wispy.Client;

import java.util.Date;

import nl.justobjects.pushlet.client.PushletClient;
import nl.justobjects.pushlet.client.PushletClientListener;
import nl.justobjects.pushlet.core.Event;
import nl.justobjects.pushlet.core.Protocol;
import nl.justobjects.pushlet.util.PushletException;

public class TestB1 implements PushletClientListener, Protocol{
	private static String SUBJECT = "/stocks/aexonlinewispy";

	private static final String MODE = MODE_STREAM;
	
	private Integer firstRate = 0;
	private Integer lastRate = 0;
	private boolean first = true;
	
	public static long maxWaitTime = 0;
	public static long minWaitTime = 5000;
	public static int maxWaitNo = 0;
	public static int minWaitNo = 0;
	
	public static int zeroUnkind = 0;
	public static int b0toN200 = 0;
	public static int bN200toN400 = 0;
	public static int bN400toN600 = 0;
	public static int bN600toN800 = 0;
	public static int bN800toN1000 = 0;
	public static int bN1000toN1200 = 0;
	public static int bN1200toN1400 = 0;
	public static int bN1400toN1600 = 0;
	public static int bN1600toN1800 = 0;
	public static int bN1800toN2000 = 0;
	public static int b0to200 = 0;
	public static int b200to400 = 0;
	public static int b400to600 = 0;
	public static int b600to800 = 0;
	public static int b800to1000 = 0;
	public static int b1000to1200 = 0;
	public static int b1200to1400 = 0;
	public static int b1400to1600 = 0;
	public static int b1600to1800 = 0;
	public static int b1800to2000 = 0;
	public static int b2000to2400 = 0;
	public static int b2400to2800 = 0;
	public static int b2800to3200 = 0;
	public static int up3200 = 0;
	public static int unkind = 0;
	
	public static long	totalWaitTime = 0;
	public static long totalRunTimes = 0;

	public TestB1(String aHost, int aPort) {
		// Create and start a Pushlet client; we receive callbacks
		// through onHeartbeat() and onData().
		try {
			PushletClient pushletClient = new PushletClient(aHost, aPort);
			pushletClient.setDebug(true);
			pushletClient.join();
			pushletClient.listen(this, MODE, SUBJECT);
			// pushletClient.joinListen(this, MODE, SUBJECT);
			System.out.println("here pushletClient started");
			p("pushletClient started MyTest");
		} catch (PushletException pe) {
			p("Error in setting up pushlet session pe=" + pe);
		}
	}

	/** Error occurred. */
	public void onError(String message) {
		p("onAbort onError: " + message);
	}

	/** Abort event from server. */
	public void onAbort(Event theEvent) {
		p("onAbort received: " + theEvent.toString());
	}

	/** Data event from server. */
	public void onData(Event theEvent) {
		// Calculate round trip delay
		
		//p("theEvent.toXML() : " + theEvent.toXML());
//		p("here is the city :" + theEvent.getField("city"));
		p("name : " + theEvent.getField("name"));
		p("rate : " + theEvent.getField("rate"));
		Integer rateInteger = new Integer(theEvent.getField("rate"));
		lastRate = rateInteger;
		if(first)
		{
			firstRate = rateInteger;
			first = false;
		}
		
		Date now = new Date();
		Date date = new Date(theEvent.getField("time"));
		
		//----------------------------------------------------------
		long time = now.getTime() - date.getTime();
		totalWaitTime += time;
		//條件表達式的執行順序為:先求解表達式1,若值為非0,表示條件為真,則求解表達式2,此時表達式2的值就作為整個條件表達式的值;
		//若表達式1的值為0,表示條件為假,則求解表達式3,表達式3的值就是整個條件表達式的值
		minWaitTime = (minWaitTime < time) ? minWaitTime : time;
		maxWaitTime = (maxWaitTime < time) ? time : maxWaitTime;
		if(maxWaitTime <= time){
			maxWaitNo = new Integer(theEvent.getField("rate"));
		}
		if(minWaitTime >= time){
			minWaitNo = new Integer(theEvent.getField("rate"));
		}
		p("延時時間 : " + time + "毫秒。");
		if (time > 2000){
			p("------------------------奇了-- >2000 max ----------------------------");
			p("time : " + theEvent.getField("time"));
			p("now  : " + now.toString());
		}
		if (time <200){
			p("------------------------奇了--- <200 min ---------------------------");
			p("time : " + theEvent.getField("time"));
			p("now  : " + now.toString());
		}
		int sw = (int)time/200;
		switch (sw) {
		
		case -1:
			b200to400++;
			break;
		case -2:
			bN400toN600++;
			break;
		case -3:
			bN600toN800++;
			break;
		case -4:
			bN800toN1000++;
			break;
		case -5:
			bN1000toN1200++;
			break;
		case -6:
			bN1200toN1400++;
			break;
		case -7:
			bN1400toN1600++;
			break;
		case -8:
			bN1600toN1800++;
			break;
		case -9:
			bN1800toN2000++;
			break;
		case 0:
			if(time >= 0)
			b0to200++;
			else if(time < 0){
				b0toN200++;
			}
			else {
				zeroUnkind++;
			}
			break;
		case 1:
			b200to400++;
			break;
		case 2:
			b400to600++;
			break;
		case 3:
			b600to800++;
			break;
		case 4:
			b800to1000++;
			break;
		case 5:
			b1000to1200++;
			break;
		case 6:
			b1200to1400++;
			break;
		case 7:
			b1400to1600++;
			break;
		case 8:
			b1600to1800++;
			break;
		case 9:
			b1800to2000++;
			break;
		case 10:
			b2000to2400++;
			break;
		case 11:
			b2000to2400++;
			break;
		case 12:
			b2400to2800++;
			break;
		case 13:
			b2400to2800++;
			break;
		case 14:
			b2800to3200++;
			break;
		case 15:
			b2800to3200++;
			break;
		case 16:
			up3200++;
			break;
		default:
			unkind++;
			break;
		}
//		p("here is the EPCCode :" + theEvent.getField("epc"));
//		p("p_event :" + theEvent.getField("p_event"));
//		p("p_time : " + theEvent.getField("p_time"));
//		p("p_from : " + theEvent.getField("p_from"));
//		p("p_mode : " + theEvent.getField("p_mode"));
		showSummery();
	}

	
	private void showSummery() {
		System.out.println();
		//每10次輸出一下統計信息
		totalRunTimes++;
		if(totalRunTimes % 30 == 0){
			p(" ");
			p("--------------哇咔咔 統計信息開始----------- ");
			p("第一次開始調用的rate " + firstRate);
			p("總共獲取調用了多少次 : " + totalRunTimes + "次");
			p("下面應該是多少 " + (int)(firstRate+totalRunTimes-1));
			p("最后一次rate " + lastRate);
			p("");
			p("最大延時時間 : " + maxWaitTime + "毫秒");
			p("最大延遲產生的rate : " + maxWaitNo);
			p("最小延時時間 : " + minWaitTime + "毫秒");
			p("最小延遲產生的rate : " + minWaitNo);
			p("平均延時時間 : " + totalWaitTime/totalRunTimes + "毫秒");
			p(" ");
			p("-1800 -2000出現次數 :" + bN1800toN2000);
			p("-1600 -1800出現次數 :" + bN1600toN1800);
			p("-1400 -1600出現次數 :" + bN1400toN1600);
			p("-1200 -1400出現次數 :" + bN1200toN1400);
			p("-1000 -1200出現次數 :" + bN1000toN1200);
			p("-800 -1000出現次數 :" + bN800toN1000);
			p("-600 -800出現次數 :" + bN600toN800);
			p("-400 -600出現次數 :" + bN400toN600);
			p("-200 -400出現次數 :" + bN200toN400);
			p("0 TO -200出現次數 :" + b0toN200);
			p("0 TO 200出現次數 :" + b0to200);
			p("200-400出現次數 :" + b200to400);
			p("400-600出現次數 :" + b400to600);
			p("600-800出現次數 :" + b600to800);
			p("800-1000出現次數 :" + b800to1000);
			p("1000-1200出現次數 :" + b1000to1200);
			p("1200-1400出現次數 :" + b1200to1400);
			p("1400-1600出現次數 :" + b1400to1600);
			p("1600-1800出現次數 :" + b1600to1800);
			p("1800-2000出現次數 :" + b1800to2000);
			p("2000-2400出現次數 :" + b2000to2400);
			p("2400-2800出現次數 :" + b2400to2800);
			p("2800-3200出現次數 :" + b2800to3200);
			p("3200以上出現次數 :" + up3200);
			p("未能統計的次數 :" + unkind);
			p("未能統計的ZROE次數 :" + zeroUnkind);
			p(" ");
			System.out.println();
		}
		
	}

	/** Heartbeat event from server. */
	public void onHeartbeat(Event theEvent) {
		p("onHeartbeat received: " + theEvent.toString());
	}

	/** Generic print. */
	public static void p(String s) {
		System.out.println("[MyTest] " + s);
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO 自動生成方法存根
		 new TestB1("192.168.21.48", 8080);
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产成人91porn| 一本色道**综合亚洲精品蜜桃冫| 粉嫩av一区二区三区在线播放| 欧美一个色资源| 日本不卡的三区四区五区| 欧美精品xxxxbbbb| 日韩二区三区在线观看| 26uuu精品一区二区| 国产在线不卡一区| 国产精品久久久久久久久快鸭| 国产91精品一区二区麻豆网站| 久久国产剧场电影| 久久久久97国产精华液好用吗| 成人美女在线观看| 日韩精品一二三四| 中文字幕精品综合| 欧美裸体bbwbbwbbw| 欧美日韩久久一区| 波多野结衣一区二区三区| 婷婷综合在线观看| 亚洲天堂精品在线观看| 666欧美在线视频| 不卡的av在线播放| 精品一区在线看| 午夜不卡av在线| 免费xxxx性欧美18vr| 国模娜娜一区二区三区| 热久久一区二区| 国产原创一区二区三区| 成人午夜看片网址| 欧美三级电影在线观看| 成熟亚洲日本毛茸茸凸凹| 色综合久久综合网| 日韩欧美一区二区视频| 国产jizzjizz一区二区| 欧美主播一区二区三区美女| 99久久免费视频.com| 国产白丝精品91爽爽久久| 色诱视频网站一区| 日韩免费高清电影| 亚洲精品国产高清久久伦理二区| 2014亚洲片线观看视频免费| 亚洲欧美激情一区二区| 亚洲欧美日韩一区二区三区在线观看| 亚洲成人精品一区| 日韩国产欧美在线视频| 91在线观看一区二区| 成人免费毛片高清视频| 欧美精品丝袜久久久中文字幕| 国产日韩综合av| 中文字幕亚洲在| 亚洲老妇xxxxxx| 国产精品一二三在| 成人午夜在线播放| 日韩午夜av电影| 一区二区三区小说| 日韩成人伦理电影在线观看| 99国产精品国产精品久久| 精品剧情在线观看| 国产精品国产三级国产| 国产一区二区三区观看| 欧美日韩视频专区在线播放| 国产精品国产三级国产普通话三级 | 美女视频免费一区| 精品一区免费av| 91精品国产麻豆国产自产在线| 日韩精品一区二区在线观看| 亚洲福利视频一区| 欧美日韩国产影片| 亚洲激情成人在线| 97精品国产露脸对白| 日本一区二区三区电影| 国产成人综合网站| 91麻豆国产自产在线观看| 精品日本一线二线三线不卡| 亚洲地区一二三色| 欧美日本韩国一区| 婷婷六月综合网| 欧美精品自拍偷拍动漫精品| 亚洲国产aⅴ天堂久久| 欧美性受xxxx黑人xyx| 日韩欧美国产一区在线观看| 香蕉成人伊视频在线观看| 欧美美女直播网站| 男人的天堂久久精品| 精品99999| 亚洲一区二区三区影院| 国产91在线看| 国产精品国产三级国产三级人妇 | 欧美亚洲动漫精品| 亚洲国产日日夜夜| 欧美群妇大交群中文字幕| 天堂av在线一区| 日韩片之四级片| 国产一区亚洲一区| 国产精品理伦片| 欧美亚洲综合在线| 日本成人超碰在线观看| 久久众筹精品私拍模特| 成人的网站免费观看| 亚洲一区中文日韩| 欧美美女网站色| 国产成人免费视| 亚洲人成人一区二区在线观看 | 久久久久久久电影| 色婷婷久久久综合中文字幕| 日韩国产精品久久久久久亚洲| 久久久久久久久久久久久女国产乱| 国产a精品视频| 亚洲成人动漫在线免费观看| 久久这里只有精品6| 91社区在线播放| 麻豆91在线观看| 国产精品视频线看| 国产乱码精品一区二区三| 国产精品伦理在线| 欧美精品久久天天躁| 国产一区二区伦理| 亚洲午夜一区二区| 国产日韩综合av| 日韩午夜在线影院| 欧美私模裸体表演在线观看| 国产精品综合一区二区| 亚洲成人免费影院| 1024亚洲合集| 久久免费国产精品| 欧美电影影音先锋| 色综合久久99| 粉嫩av亚洲一区二区图片| 日本va欧美va瓶| 一区二区三区加勒比av| 久久久久国产精品麻豆ai换脸 | av在线播放不卡| 国产在线观看一区二区| 视频一区免费在线观看| 亚洲精品视频在线| 欧美国产精品一区| 精品第一国产综合精品aⅴ| 欧美日韩一区二区三区在线| 成人h动漫精品一区二区| 久久国产精品免费| 日韩va亚洲va欧美va久久| 亚洲电影在线播放| 亚洲乱码日产精品bd| 亚洲青青青在线视频| 国产精品久久久爽爽爽麻豆色哟哟 | 精品无人码麻豆乱码1区2区| 日韩激情av在线| 亚洲成人免费av| 五月天欧美精品| 天天色图综合网| 亚洲成年人网站在线观看| 亚洲午夜私人影院| 亚洲成人www| 天天综合色天天| 天涯成人国产亚洲精品一区av| 亚洲一区二区在线视频| 亚洲一二三四区不卡| 亚洲电影第三页| 日韩精品国产精品| 久久66热偷产精品| 国产美女一区二区| 成人免费三级在线| 91国模大尺度私拍在线视频| 麻豆精品在线播放| 国内精品视频一区二区三区八戒| 蜜桃在线一区二区三区| 国内成人精品2018免费看| 国产在线看一区| 高清不卡一区二区| 91麻豆蜜桃一区二区三区| 91精品91久久久中77777| 欧美影院午夜播放| 欧美成人午夜电影| 国产精品久久久久一区二区三区共| 中文字幕不卡在线观看| 亚洲靠逼com| 蜜臀va亚洲va欧美va天堂| 狠狠色丁香久久婷婷综| 成人激情av网| 色婷婷狠狠综合| 欧美一级在线观看| 国产精品系列在线| 亚洲高清视频中文字幕| 久久狠狠亚洲综合| 91影院在线免费观看| 欧美丰满美乳xxx高潮www| 2021国产精品久久精品| 亚洲精品日日夜夜| 美国三级日本三级久久99| 不卡一区二区三区四区| 欧美图片一区二区三区| 久久久久久久免费视频了| 亚洲一区二区中文在线| 国产一区二区精品久久91| 欧美中文一区二区三区| 久久久精品黄色| 婷婷中文字幕一区三区| av电影一区二区| 日韩精品一区二区三区swag|