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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? events.java

?? 輕量嵌入JVM,可用于掌上設(shè)備手機(jī)等手持消息設(shè)備.
?? JAVA
字號:
/************************************************************************
This file is part of java core libraries for the simpleRTJ virtual machine.

This file is covered by the GNU GPL with the following exception:
  As a special exception, the copyright holders of this library give you permission
  to link this library with independent modules to produce an executable, regardless
  of the license terms of these independent modules, and to copy and distribute the
  resulting executable under terms of your choice, provided that you also meet, for
  each linked independent module, the terms and conditions of the license of that
  module. An independent module is a module which is not derived from or based on
  this library. If you modify this library, you may extend this exception to your
  version of the library, but you are not obligated to do so. If you do not wish
  to do so, delete this exception statement from your version.


THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY,  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL RTJ COMPUTING BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.

Copyright (c) 2000-2002 RTJ Computing Pty. Ltd. All rights reserved.
***********************************************************************/
package javax.events;

/**
 * Events dispatcher class. The run() method of this class implements an infinite loop
 * in which this thread waits (suspended) for an event to occur. When an event is
 * recognised the VM thread scheduler immediately resumes this thread so it can
 * call fire() methods of registered AsyncEvent handler.
 * <p>
 * Note: There can be only one instance of this thread. If there are more instances
 * of this class then only the last created instance will receive event notifications.
 * <p>
 * Events class assumes that the appropriate fire counters are implemented in native code.
 * The order of fire counters must match the order and type of AsyncEvent objects that were
 * added to the evList using the addEvent method.<br>
 * Note that Timer event handler must be always present at index zero.
 * <p>
 * If there are several events pending then they are processed in turn until all fire counters
 * are decremented to zero.
 */
public class Events extends Thread
{
    public static final int ALL_EVENTS  = -1;

    /**
     * Number of events is retrieved from the native code.
     */
    public static int MAX_EVENTS = getEventsCount();
    /**
     * An array of AsyncEvent objects that are recoginsed in the native code.
     */
    private static AsyncEvent evList[] = new AsyncEvent[MAX_EVENTS];

    /**
     * Thread execution method implementing infinite loop which execution is resumed on
     * every event recognition. Once all events are processed thread enters
     * a suspend mode.
     */
    public void run()
    {
        // make this daemon thread so it can be killed with the last non-daemon thread
        setDaemon(true);
        // register this thread with the VM thread scheduler
        eventThreadRegister();
        while (true)
        {
            int evId = getEvent();

            // no more events to process -- suspend this thread
            if (evId < 0)
            {
                suspend();
                continue;
            }
            if (evId < evList.length && evList[evId] != null)
                evList[evId].fire();
        }
    }

    /**
     * Adds a new event into the list of registerd events.<br>
     * Particular events must be placed at indexes in the evList that match the
     * order of fire counters implemented in native code.<br>
     * Note that the Timer event must be always at index zero.
     * @param event     a new event
     * @param pos       index to the evList
     * @return true if successful, false if specified position is invalid or there is
     *  an event already associated with this position.
     * @exception EventLimitException thrown when the event index is out of bounds
     */
    public void addEvent(AsyncEvent event, int index) throws EventLimitException
    {
        if (index >= 0 && index < evList.length)
        {
            evList[index] = event;
            return;
        }
        throw new EventLimitException();
    }

    /**
     * Removes all events from the list of registerd events.
     */
    public void removeAll()
    {
        for (int i=0; i < evList.length; i++)
            evList[i] = null;
    }

    /**
     * There is a counter associated with each event. It is possible that the counter
     * is incremented faster than corresponding event hadler can process requests.
     * This method will clear fire counter for the specified event.
     * @param event   async event for which fire counter should be cleared
     */
    public boolean clearPendingFireCount(AsyncEvent event)
    {
        for (int i=0; i < evList.length; i++)
        {
            if (evList[i] != null && evList[i] == event)
            {
                clearPendingFireCount(i);
                return true;
            }
        }
        return false;
    }

    /**
     * Register this thread with the VM's thread execution scheduler. When an event
     * is recognised the thread scheduler will instantly resume execution of this thread
     * so that appropriate fire() methods of AsyncEvent classes can be invoked.
     */
    private native void eventThreadRegister();

    /**
     * Get an ID of the next pending event.
     * @return  ID of the pending event if successful, otherwise -1 is returned.
     */
    private native int getEvent();

    /**
     * Accompanying method for clearPendingFireCount.
     * This method will clear fire counter for the event specified by its ID.
     * If ALL_EVENTS is specified then all fire counters are cleared.
     * @param eventId   event ID for which fire counter should be cleared.
     */
    public native void clearPendingFireCount(int eventId);

    /**
     * Native method returning the count of events for which JVM created
     * fire counters.
     * @return max. number of event handlers that can be registered
     */
    private static native int getEventsCount();
}


?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品国产91乱码一区二区三区 | 亚洲超丰满肉感bbw| 欧美一区二区视频在线观看 | 亚洲综合色自拍一区| 日韩美女在线视频| 色婷婷久久久综合中文字幕| 激情综合网最新| 亚洲在线视频一区| 国产精品网站一区| 日韩三级精品电影久久久 | 国产美女在线精品| 手机精品视频在线观看| 一区二区三国产精华液| 国产精品免费视频网站| 久久这里只有精品视频网| 91精品国产高清一区二区三区 | 欧美中文字幕亚洲一区二区va在线 | 欧美精品一级二级三级| 99国产精品视频免费观看| 国产成人精品一区二| 日韩一区二区三区电影| 国产一区二区三区精品欧美日韩一区二区三区 | 亚洲午夜私人影院| 日本一区二区在线不卡| 制服丝袜亚洲播放| 91久久线看在观草草青青| 国产精品资源网| 亚洲一区中文在线| 国产精品福利一区二区| 日韩欧美一级特黄在线播放| 在线观看亚洲成人| 成人一区二区在线观看| 九色|91porny| 五月婷婷综合激情| 亚洲欧美精品午睡沙发| 成人午夜视频网站| 国产日韩精品一区二区三区 | 成人开心网精品视频| 狂野欧美性猛交blacked| 亚洲成人av一区二区三区| **欧美大码日韩| 国产视频在线观看一区二区三区| 欧美成人欧美edvon| 91精品国产综合久久婷婷香蕉| 欧美在线一二三四区| 国产成人夜色高潮福利影视| 精品一区二区免费视频| 美国欧美日韩国产在线播放| 亚洲精品乱码久久久久久黑人| 中国av一区二区三区| 久久综合色8888| 精品成人在线观看| 欧美成人精品高清在线播放| 精品少妇一区二区三区在线播放| 91精品国产综合久久精品性色| 欧美日韩三级视频| 欧美视频你懂的| 亚洲国产日韩综合久久精品| 一区二区三区四区不卡在线 | 亚洲欧美电影院| 国产精品视频免费| 亚洲欧洲精品天堂一级| 国产精品免费观看视频| 欧美国产一区二区| 国产精品传媒入口麻豆| 国产精品超碰97尤物18| 玉米视频成人免费看| 亚洲高清免费视频| 天天综合网天天综合色| 美女久久久精品| 国精产品一区一区三区mba桃花| 韩日精品视频一区| 丁香婷婷综合网| 99久久精品国产导航| 9久草视频在线视频精品| 99在线精品免费| 欧美亚洲日本国产| 色悠悠亚洲一区二区| 欧美性一区二区| 国产精品综合二区| 中文字幕在线观看一区| 国产精品国模大尺度视频| 国产视频一区二区在线观看| 2020国产精品| 久久久精品综合| 亚洲私人黄色宅男| 五月综合激情日本mⅴ| 另类综合日韩欧美亚洲| 成人午夜激情影院| 欧洲色大大久久| 精品久久免费看| 国产精品免费丝袜| 丝袜亚洲另类丝袜在线| 国产一区二区三区日韩| 色噜噜夜夜夜综合网| 日韩欧美一级在线播放| 一区精品在线播放| 无吗不卡中文字幕| 九九九久久久精品| 91免费在线播放| 精品国产一区二区国模嫣然| 国产精品二三区| 日韩成人一区二区三区在线观看| 粉嫩欧美一区二区三区高清影视| 欧美无乱码久久久免费午夜一区| 精品国产乱码久久久久久闺蜜| 国产午夜精品理论片a级大结局 | 国产一区在线观看麻豆| av一本久道久久综合久久鬼色| 欧美日韩在线精品一区二区三区激情| 日韩欧美一级在线播放| 亚洲九九爱视频| 国产精品99久久不卡二区| 欧美日韩在线直播| 国产精品久久久久久久午夜片| 婷婷亚洲久悠悠色悠在线播放| 岛国精品一区二区| 日韩美女主播在线视频一区二区三区| 亚洲欧洲成人自拍| 国内久久精品视频| 欧美精品久久99| 亚洲三级电影网站| 成人视屏免费看| 精品久久久久香蕉网| 玉足女爽爽91| 99久久99久久精品国产片果冻| 精品99一区二区| 日本欧洲一区二区| 欧美色网一区二区| 中文字幕视频一区二区三区久| 国模冰冰炮一区二区| 欧美性受xxxx黑人xyx性爽| 国产欧美日韩久久| 激情综合色播五月| 91福利视频在线| 国产精品情趣视频| 欧美精品丝袜久久久中文字幕| 中文字幕在线免费不卡| 粉嫩久久99精品久久久久久夜| 久久色.com| 青青草91视频| 欧美电影在哪看比较好| 亚洲精品你懂的| 色综合久久天天| 亚洲免费观看高清完整| 91影视在线播放| 亚洲视频网在线直播| 成人黄动漫网站免费app| 国产亚洲人成网站| 国产99久久精品| 欧美激情在线看| 成人免费毛片aaaaa**| 国产亚洲欧美一级| 国产成人免费在线观看| 日本一二三不卡| 成a人片亚洲日本久久| 国产精品超碰97尤物18| 91蜜桃视频在线| 亚洲欧美区自拍先锋| 久久久一区二区| 日韩免费视频一区| 日本伊人午夜精品| 日韩欧美一二三区| 国产一区二区三区免费在线观看| 制服丝袜日韩国产| 亚洲成人av免费| 日本久久一区二区| 亚洲精品国产一区二区三区四区在线| 国内精品久久久久影院色| 精品精品国产高清a毛片牛牛| 热久久免费视频| 欧美肥大bbwbbw高潮| 久久精品国产第一区二区三区| 精品欧美久久久| 成人一区二区三区| 亚洲图片激情小说| 欧美丝袜第三区| 麻豆国产一区二区| 亚洲国产成人一区二区三区| 91丨porny丨户外露出| 爽爽淫人综合网网站| 久久亚洲一区二区三区四区| av一区二区不卡| 三级影片在线观看欧美日韩一区二区| 日韩亚洲欧美在线观看| 国产精品系列在线播放| 亚洲欧美一区二区久久| 欧美久久久久久久久中文字幕| 美女脱光内衣内裤视频久久影院| 国产日韩欧美精品在线| 欧美在线看片a免费观看| 亚洲一二三四区不卡| 3d动漫精品啪啪一区二区竹菊 | 久久99国产精品麻豆| 国产精品视频你懂的| 777亚洲妇女| 成人免费不卡视频| 亚洲国产精品久久久男人的天堂| 91精品国产色综合久久ai换脸| 国产白丝精品91爽爽久久|