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

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

?? eventpullsource.java

?? Java下Comet的實現框架Pushlet例子。 實現實時推送數據到客戶端。 服務器每隔30-500MS產生一個隨機數
?? JAVA
字號:
// Copyright (c) 2000 Just Objects B.V. <just@justobjects.nl>
// Distributable under LGPL license. See terms of license at gnu.org.

package nl.justobjects.pushlet.core;

import nl.justobjects.pushlet.util.Log;

/**
 * Abstract Event source from which Events are pulled.
 *
 * @version $Id: EventPullSource.java,v 1.15 2007/11/23 14:33:07 justb Exp $
 * @author Just van den Broecke - Just Objects &copy;
 **/

/**
 * ABC for specifc EventPullSources.
 */
abstract public class EventPullSource implements EventSource, Runnable {
	private volatile boolean alive = false;
	private volatile boolean active = false;
	private static int threadNum = 0;
	private Thread thread;

	public EventPullSource() {
	}

	abstract protected long getSleepTime();

	abstract protected Event pullEvent();

	public void start() {
		thread = new Thread(this, "EventPullSource-" + (++threadNum));
		thread.setDaemon(true);
		thread.start();
	}

	public boolean isAlive() {
		return alive;
	}

	/**
	 * Stop the event generator thread.
	 */
	public void stop() {
		alive = false;

		if (thread != null) {
			thread.interrupt();
			thread = null;
		}

	}

	/**
	 * Activate the event generator thread.
	 */
	synchronized public void activate() {
		if (active) {
			return;
		}
		active = true;
		if (!alive) {
			start();
			return;
		}
		Log.debug(getClass().getName() + ": notifying...");
		notifyAll();
	}

	/**
	 * Deactivate the event generator thread.
	 */
	public void passivate() {
		if (!active) {
			return;
		}
		active = false;
	}

	/**
	 * Main loop: sleep, generate event and publish.
	 */
	public void run() {
		Log.debug(getClass().getName() + ": starting...");
		alive = true;
		while (alive) {
			try {

				Thread.sleep(getSleepTime());

				// Stopped during sleep: end loop.
				if (!alive) {
					break;
				}

				// If passivated wait until we get
				// get notify()-ied. If there are no subscribers
				// it wasts CPU to remain producing events...
				synchronized (this) {
					while (!active) {
						Log.debug(getClass().getName() + ": waiting...");
						wait();
					}
				}

			} catch (InterruptedException e) {
				break;
			}

			try {
				// Derived class should produce an event.
				Event event = pullEvent();

				// Let the publisher push it to subscribers.
				Dispatcher.getInstance().multicast(event);
			} catch (Throwable t) {
				Log.info(System.getProperty("java.library.path"));
				Log.warn("EventPullSource exception while multicasting ", t);
				t.printStackTrace();
			}
		}
		Log.debug(getClass().getName() + ": stopped");
	}
}

/*
  * $Log: EventPullSource.java,v $
  * Revision 1.15  2007/11/23 14:33:07  justb
  * core classes now configurable through factory
  *
  * Revision 1.14  2005/02/28 09:14:55  justb
  * sessmgr/dispatcher factory/singleton support
  *
  * Revision 1.13  2005/02/21 16:59:08  justb
  * SessionManager and session lease introduced
  *
  * Revision 1.12  2005/02/21 11:50:46  justb
  * ohase1 of refactoring Subscriber into Session/Controller/Subscriber
  *
  * Revision 1.11  2005/02/18 10:07:23  justb
  * many renamings of classes (make names compact)
  *
  * Revision 1.10  2005/02/18 09:54:15  justb
  * refactor: rename Publisher Dispatcher and single Subscriber class
  *
  * Revision 1.9  2004/09/20 22:01:38  justb
  * more changes for new protocol
  *
  * Revision 1.8  2004/09/03 22:35:37  justb
  * Almost complete rewrite, just checking in now
  *
  * Revision 1.7  2004/08/15 16:00:15  justb
  * enhancements to pull mode
  *
  * Revision 1.6  2004/08/13 23:36:05  justb
  * rewrite of Pullet into Pushlet "pull" mode
  *
  * Revision 1.5  2004/03/10 14:01:55  justb
  * formatting and *Subscriber refactoring
  *
  * Revision 1.4  2003/08/15 08:37:40  justb
  * fix/add Copyright+LGPL file headers and footers
  *
  * Revision 1.3  2003/08/12 09:57:05  justb
  * replaced all print statements to Log.*() calls
  *
  * Revision 1.2  2003/05/18 16:15:08  justb
  * support for XML encoded Events
  *
  * Revision 1.1.1.1  2002/09/24 21:02:31  justb
  * import to sourceforge
  *
  * Revision 1.1.1.1  2002/09/20 22:48:17  justb
  * import to SF
  *
  * Revision 1.1.1.1  2002/09/20 14:19:03  justb
  * first import into SF
  *
  * Revision 1.3  2002/04/15 20:42:41  just
  * reformatting and renaming GuardedQueue to EventQueue
  *
  * Revision 1.2  2000/08/21 20:48:29  just
  * added CVS log and id tags plus copyrights
  *
  *
  */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区二区| 欧美激情在线免费观看| 精品国产123| 亚洲欧美日韩一区二区| 毛片不卡一区二区| 91丨九色丨蝌蚪富婆spa| 欧美精品一区二区三区一线天视频| 国产精品久久久久久久久久久免费看| 亚洲国产你懂的| 岛国一区二区三区| 精品日本一线二线三线不卡| 亚洲最快最全在线视频| 懂色av一区二区三区免费看| 日韩丝袜情趣美女图片| 亚洲成人一区二区| 日本高清成人免费播放| 亚洲国产成人私人影院tom| 久久国产精品露脸对白| 欧美午夜在线观看| 亚洲天堂中文字幕| 高清av一区二区| 久久久www成人免费无遮挡大片| 日韩激情一二三区| 欧美午夜精品免费| 亚洲在线视频一区| 日本精品视频一区二区| 中文字幕亚洲一区二区va在线| 黄页网站大全一区二区| 日韩午夜av电影| 蜜桃av噜噜一区| 日韩一区二区三区三四区视频在线观看 | 在线观看不卡视频| 亚洲日本在线天堂| 99re成人在线| 亚洲视频1区2区| 色综合一区二区三区| 亚洲成av人影院在线观看网| 93久久精品日日躁夜夜躁欧美| 国产亚洲综合在线| 国产成人激情av| 国产精品天干天干在观线| 国产91精品精华液一区二区三区| 精品久久国产97色综合| 国产精品资源在线| 国产精品网站在线播放| 99re在线视频这里只有精品| 亚洲美女免费视频| 欧美日韩一区国产| 日韩专区在线视频| 日韩精品一区二区三区中文不卡 | 国产一区二区三区香蕉| 久久久www成人免费毛片麻豆| 国产一区二区福利视频| 亚洲国产精品成人综合色在线婷婷| 国产成人免费av在线| 亚洲欧美日韩综合aⅴ视频| 欧美性大战久久久| 韩国一区二区三区| 最新日韩在线视频| 欧美高清hd18日本| 国产黄色91视频| 亚洲一区自拍偷拍| 欧美精品一区二区久久婷婷| 成人黄色片在线观看| 一区二区三区产品免费精品久久75| 欧美裸体bbwbbwbbw| 激情深爱一区二区| 国产精品乱码久久久久久| 丁香激情综合五月| 最新久久zyz资源站| 99久久婷婷国产精品综合| 欧美日韩一二三区| 2024国产精品| 成人中文字幕在线| 欧美日韩视频一区二区| 国产精品成人一区二区艾草| 成人黄色一级视频| 久久精品夜色噜噜亚洲aⅴ| 亚洲成人资源在线| 91色在线porny| 欧美一区二区三区免费观看视频| 国产精品嫩草影院com| 国产精品网站在线| 日韩电影在线一区二区三区| 美女看a上一区| 色综合咪咪久久| 秋霞成人午夜伦在线观看| 日本系列欧美系列| 中文字幕制服丝袜成人av| 蜜桃久久av一区| 欧美精品亚洲二区| 亚洲v日本v欧美v久久精品| 懂色av一区二区三区免费看| 国产喷白浆一区二区三区| 精品一区二区在线看| 亚洲一区免费在线观看| 亚洲曰韩产成在线| 欧美视频自拍偷拍| 性欧美大战久久久久久久久| 国产精品久99| 国产日韩欧美在线一区| 日韩欧美一区二区免费| 欧美日韩aaaaa| 91免费观看视频在线| 国产精品亚洲一区二区三区在线| 日韩av午夜在线观看| 亚洲午夜影视影院在线观看| 亚洲欧洲av色图| 国产精品日韩成人| 国产日韩欧美麻豆| 精品国产一区久久| 欧美一级在线视频| 欧美一级二级在线观看| 欧美人动与zoxxxx乱| 欧美三级视频在线观看| 欧美中文字幕一二三区视频| 色先锋久久av资源部| 91视频一区二区三区| 成人丝袜视频网| 成人国产亚洲欧美成人综合网| 国产乱码精品一区二区三区忘忧草| 日本亚洲一区二区| 日韩高清不卡一区二区| 日韩av在线播放中文字幕| 日韩精品色哟哟| 日本欧美一区二区| 狠狠色综合播放一区二区| 黑人精品欧美一区二区蜜桃| 粉嫩高潮美女一区二区三区| 狠狠色狠狠色综合| 高清国产一区二区| 日本大香伊一区二区三区| 欧美在线观看一区二区| 4438x亚洲最大成人网| 日韩欧美在线影院| 久久久不卡网国产精品二区| 国产精品视频在线看| 亚洲精品国产无套在线观| 五月天亚洲婷婷| 久久国产视频网| 国产福利精品导航| 91激情在线视频| 日韩欧美国产一区二区三区 | 亚洲日本一区二区| 亚洲国产精品久久久久婷婷884| 亚洲成a人在线观看| 狠狠狠色丁香婷婷综合激情| 99视频超级精品| 欧美久久久影院| 国产欧美日韩在线视频| 一区二区在线观看视频| 九九精品视频在线看| 不卡视频在线看| 91精品国产综合久久精品麻豆 | 欧美一区二区三区四区五区| 2014亚洲片线观看视频免费| 国产精品激情偷乱一区二区∴| 亚洲精品菠萝久久久久久久| 日韩中文字幕麻豆| 成人久久久精品乱码一区二区三区| 欧美中文字幕一区二区三区| 久久精品亚洲乱码伦伦中文| 亚洲国产精品影院| 国产精品自拍毛片| 欧美日本精品一区二区三区| 日本一区二区免费在线| 亚洲成a人片在线不卡一二三区| 国产成人小视频| 欧美精品一卡二卡| 18欧美乱大交hd1984| 久久成人18免费观看| 欧美性极品少妇| 中文字幕一区二区三区蜜月| 免费在线观看精品| 欧美性色综合网| 欧美激情在线看| 国产综合色产在线精品| 中文字幕免费一区| 日韩高清在线一区| 欧洲国内综合视频| 国产精品短视频| 国产一区二三区好的| 6080国产精品一区二区| 一卡二卡欧美日韩| 伦理电影国产精品| 精品福利一二区| 蜜臀av性久久久久蜜臀aⅴ流畅 | 国产香蕉久久精品综合网| 亚洲一区二区三区四区五区中文 | 亚洲国产日韩a在线播放性色| 国产视频一区二区三区在线观看| 国产综合色在线| 成人激情黄色小说| 91视频免费播放| 日韩一区二区三区精品视频| 久久久美女毛片| 自拍偷拍欧美精品| 亚洲黄网站在线观看| 日韩午夜精品电影| 成人黄页毛片网站|