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

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

?? crowdcontroller.java

?? 網(wǎng)絡(luò)爬行器的java程序
?? JAVA
字號:
/*

Class CrowdController   (C) L. Vanhelsuwe  email: lva@telework.demon.co.uk
---------------------
This re-usable class enforces a restricted number of clients simultaneously
using some unspecified resource.

Say if you had an open-ended (unlimited) recursive mechanism spawning
threads, you would want to ensure that only so many threads in total are
active at any one time. Class CrowdController can enforce such a limitation
by handing out "tickets" (or licenses) to clients, so that they can "proceed"
with whatever they wish. Entities applying for a ticket when no more tickets
are available will block until a ticket is released by another entity.

*/

public class CrowdController {

int ticketDatabase[];                   // array of valid issueable tickets
int crowdSize;                          // current crowd size
int maxCrowdSize;                       // max crowd size to enforce

//-----------------------------------------------------------------------
// Constructor.
// Given the maximum size of a crowd to control, initialize the crowd to
// empty and mark all tickets as "not issued".
//-----------------------------------------------------------------------
public CrowdController(int maxCrowdSize) {

    this.maxCrowdSize = maxCrowdSize;   // crowd size to enforce
    crowdSize         = 0;              // current size of crowd

    ticketDatabase = new int[maxCrowdSize];
    for(int i=0; i < maxCrowdSize; i++) {
        ticketDatabase[i] = -1;         // mark all ticket IDs as available
    }
}

//-----------------------------------------------------------------------
// Apply for a ticket.
// If tickets are still available, give client a ticket and record its
// issue.
// If all tickets are currently issued, block (put client thread to sleep)
// until a ticket becomes available again (and gets recycled).
// Tickets can only be returned via the returnTicket() method.
//-----------------------------------------------------------------------
public synchronized int getTicket() {

    // if crowd is already at full capacity: wait until crowd shrinks
    while (crowdSize == maxCrowdSize) {

        // System.out.println("Crowd too big.... you have to wait (" +
        //    Thread.currentThread().getName() + ")");

        try {
            wait();
        } catch (InterruptedException leaveUsAlonePlease) {}
    }

        // OK. crowd has shrunk a bit, so grab a ticket

    int ticket = findFreeTicket();
    if (ticket == -1) {
        System.out.println("Bug: could not find free ticket when we should be able to.");
    }
    ticketDatabase[ticket] = ticket;    // record ticket issue
    crowdSize++;                        // track # of tickets out there

    return ticket;
}

//-----------------------------------------------------------------------
// A client has done whatever it needed to do and wants to give up its
// ticket. Take ticket back and recycle it for future clients. Wake up
// a random thread waiting to get a ticket of its own.
//-----------------------------------------------------------------------
public synchronized void returnTicket(int ticket)
                                        throws IllegalArgumentException {

String illegalTicket = "Alert: illegal ticket ID seized! (id= " + ticket + ")";

    if (crowdSize == 0) {
        throw new IllegalArgumentException(illegalTicket + " because crowdSize was 0");
    }

    if (ticketDatabase[ticket] != ticket) {
        throw new IllegalArgumentException(illegalTicket + " because ticket ID is not issued!");
    }

    ticketDatabase[ticket] = -1;    // mark ticket as available again.
    crowdSize--;

    notifyAll();                    // wake up a thread needing a ticket
}
//-----------------------------------------------------------------------
// Find any ticket which hasn't been issued yet.
//-----------------------------------------------------------------------
protected int findFreeTicket() {

    for(int i=0; i < maxCrowdSize; i++) {
        if (ticketDatabase[i] == -1) {
            return i;
        }
    }
    return -1;
}
} // End of Class CrowdController

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久精品在线免费观看| 欧美日韩日日骚| 欧美日韩一区二区三区视频| 日韩三级电影网址| 一区二区三区欧美视频| 国产麻豆精品久久一二三| 欧美日韩一二三区| 国产亚洲女人久久久久毛片| 亚洲香蕉伊在人在线观| 顶级嫩模精品视频在线看| 日韩午夜激情电影| 一区二区三区高清不卡| 成人视屏免费看| 精品国产免费一区二区三区四区| 亚洲成av人片在线观看无码| 91啪亚洲精品| 国产精品久久久久久久第一福利| 韩国三级在线一区| 欧美一区午夜精品| 亚洲国产sm捆绑调教视频| 成人激情小说网站| 久久精品亚洲麻豆av一区二区 | 日本成人超碰在线观看| 91影院在线免费观看| 国产三级精品在线| 国产精品99久| 国产色婷婷亚洲99精品小说| 久久爱另类一区二区小说| 日韩精品一区二区三区蜜臀 | 亚洲最大成人综合| 9l国产精品久久久久麻豆| 国产亚洲污的网站| 国产精品99久久久久久久vr| 国产日韩成人精品| 成人av网站在线| 中文字幕一区在线观看视频| 99久久久精品免费观看国产蜜| 国产精品久99| 色一区在线观看| 亚洲午夜久久久久久久久电影网 | 亚洲久草在线视频| 色国产综合视频| 亚洲国产日韩在线一区模特| 在线观看免费一区| 日本三级韩国三级欧美三级| 日韩精品在线看片z| 国模无码大尺度一区二区三区| 精品国产免费人成电影在线观看四季| 国产一区二区三区视频在线播放| 久久久久亚洲蜜桃| 99re热这里只有精品免费视频 | 午夜精品123| 日韩一区二区在线看| 激情另类小说区图片区视频区| 国产亚洲欧美色| 99久久久国产精品免费蜜臀| 亚洲成人午夜影院| 精品成人一区二区三区| 成人精品一区二区三区中文字幕| 亚洲同性同志一二三专区| 欧美视频一区二区| 久久99国产精品麻豆| 国产精品进线69影院| 欧美日韩国产首页在线观看| 国产在线精品一区二区夜色| 17c精品麻豆一区二区免费| 欧美色图一区二区三区| 精品一区二区三区影院在线午夜| 国产精品久久久久一区二区三区共| 欧美亚洲高清一区二区三区不卡| 久久不见久久见中文字幕免费| 中文幕一区二区三区久久蜜桃| 欧美午夜寂寞影院| 成人综合日日夜夜| 午夜国产精品一区| 日本一区二区三区在线不卡| 一区二区免费在线播放| 伦理电影国产精品| 一色桃子久久精品亚洲| 91麻豆精品国产| 成人激情免费视频| 精品一区二区三区av| 亚洲小说欧美激情另类| 国产农村妇女精品| 日韩美一区二区三区| 日本久久电影网| 国产v综合v亚洲欧| 美女被吸乳得到大胸91| 亚洲综合男人的天堂| 欧美国产精品专区| 日韩一级片在线观看| 91精品办公室少妇高潮对白| 国产寡妇亲子伦一区二区| 日韩电影在线免费看| 亚洲免费在线视频一区 二区| 精品国产一区二区亚洲人成毛片| 欧美日韩在线直播| 北条麻妃一区二区三区| 国产一区在线视频| 蜜桃视频免费观看一区| 亚洲一区二区视频在线观看| 综合激情成人伊人| 国产精品免费视频一区| 久久久亚洲欧洲日产国码αv| 欧美精品99久久久**| 欧洲精品一区二区三区在线观看| 成人午夜在线播放| 国产很黄免费观看久久| 国产精一区二区三区| 久久av老司机精品网站导航| 日韩成人免费看| 亚洲一区二区黄色| 亚洲午夜久久久久中文字幕久| 亚洲免费伊人电影| 亚洲伦理在线精品| 亚洲女女做受ⅹxx高潮| 亚洲乱码日产精品bd| 一区二区三区四区中文字幕| 亚洲男同性恋视频| 一区二区三区精品| 一区二区三区在线观看动漫| 亚洲一区二区三区视频在线| 亚洲一区二区欧美激情| 三级欧美在线一区| 久久99精品国产麻豆不卡| 久久99日本精品| 国产乱对白刺激视频不卡| 国产一区欧美二区| 丁香婷婷综合激情五月色| 成人小视频在线| 色偷偷88欧美精品久久久| 欧美日韩久久不卡| 日韩欧美中文字幕制服| 国产日韩精品一区二区浪潮av | 亚洲乱码日产精品bd| 亚洲综合激情小说| 午夜私人影院久久久久| 毛片av中文字幕一区二区| 国产一区二区三区久久久 | 日本欧美一区二区三区| 久久精品国产久精国产爱| 国产乱码一区二区三区| 一本久道久久综合中文字幕| 欧美三级日韩三级国产三级| 日韩免费福利电影在线观看| 亚洲国产经典视频| 亚洲一区二区三区四区不卡| 久久爱另类一区二区小说| 99久久综合精品| 欧美日韩不卡一区| 久久精品人人做人人爽人人| 亚洲天堂精品在线观看| 首页国产欧美久久| 国产成人午夜片在线观看高清观看| av一区二区三区四区| 欧美美女一区二区三区| 久久久久国产精品人| 一区二区三区欧美| 国产麻豆91精品| 欧美日韩一区二区三区不卡| 久久久亚洲高清| 偷拍自拍另类欧美| 白白色 亚洲乱淫| 欧美一区二区三区啪啪| 最新欧美精品一区二区三区| 日本美女视频一区二区| 91丝袜国产在线播放| 欧美成人精品3d动漫h| 成人欧美一区二区三区1314| 麻豆精品久久精品色综合| 91在线国产福利| 久久久久国产精品厨房| 香蕉久久夜色精品国产使用方法| 波波电影院一区二区三区| 精品美女在线观看| 亚洲国产综合在线| 91麻豆蜜桃一区二区三区| 精品99一区二区三区| 天堂久久一区二区三区| 色婷婷国产精品| 国产精品婷婷午夜在线观看| 久久99国产精品久久99果冻传媒| 欧美日韩三级在线| 一区二区三区在线观看欧美| www.爱久久.com| 久久精品视频免费| 久久er精品视频| 欧美一二三区精品| 天堂蜜桃91精品| 欧美理论在线播放| 综合电影一区二区三区 | 麻豆国产欧美日韩综合精品二区| 91国产精品成人| 亚洲欧美日韩国产手机在线| 国产精品一级在线| 国产亚洲综合在线| 国产一二三精品| 国产欧美日韩另类视频免费观看| 久久国产视频网| 精品成人在线观看|