<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    多線程的notifyAll/wait控制

    Posted on 2007-11-09 01:31 dybjsun 閱讀(210) 評(píng)論(0)  編輯  收藏 所屬分類: 多線程主題
      當(dāng)多線程啟動(dòng)時(shí),怎么才能控制他們有秩序地執(zhí)行。本例模擬一個(gè)容器,當(dāng)容器里有東西時(shí),通知各個(gè)線程來(lái)取得這些東西,如果沒(méi)有取到東西,則進(jìn)入等待狀態(tài)。(特別注意在通知各個(gè)線程notifyAll和等待wait這些方法一定要寫(xiě)在同步塊中)
    ?1?package?com.noahsi.fulltextsearch.index.basic;
    ?2?
    ?3?import?java.util.ArrayList;
    ?4?import?java.util.List;
    ?5?
    ?6?import?com.noahsi.fulltextsearch.index.model.LinkModel;
    ?7?import?com.noahsi.fulltextsearch.util.Debug;
    ?8?
    ?9?public?class?Container?{
    10?
    11??private?List?container?=?null;
    12?
    13??public?Container()?{
    14???container?=?new?ArrayList();
    15??}
    16?
    17??public?Container(LinkModel?model)?{
    18???container?=?new?ArrayList();
    19???container.add(model);
    20??}
    21?
    22??public?Container(List?list)?{
    23???container?=?new?ArrayList();
    24???container.addAll(list);
    25??}
    26?
    27??public?synchronized?void?listener()?{
    28???if?(container.size()?>?0)?{
    29????this.notifyAll();
    30???}
    31??}
    32?
    33??public?synchronized?LinkModel?getLinkModel()?{
    34???if?(container.size()?==?0)?{
    35????try?{
    36?????this.wait();
    37????}?catch?(InterruptedException?ie)?{
    38????}
    39????return?null;
    40???}
    41???return?(LinkModel)?container.remove(0);
    42??}
    43?
    44??public?synchronized?void?putLinksModel(List?links)?{
    45???LinkModel?temp?=?null;
    46???for?(int?i?=?0;?i?<?links.size();?i++)?{
    47????temp?=?(LinkModel)?links.get(i);
    48????if?(!container.contains(temp))?{
    49?????container.add(temp);
    50????}
    51???}
    52???this.notifyAll();
    53??}
    54?
    55??public?synchronized?void?putLinkModel(LinkModel?model)?{
    56???if?(model?!=?null)?{
    57????container.add(model);
    58???}
    59???this.notifyAll();
    60??}
    61?
    62??public?synchronized?void?active()?{
    63???this.notifyAll();
    64??}
    65?
    66??public?int?getSize()?{
    67???return?container.size();
    68??}
    69?}
    主站蜘蛛池模板: 免费国产a国产片高清| 59pao成国产成视频永久免费| 亚洲国产成人精品无码区在线网站| 亚洲中文字幕乱码一区| 在线观看成人免费视频不卡| 亚洲喷奶水中文字幕电影| 69天堂人成无码麻豆免费视频| 亚洲人成网站在线观看播放青青| 亚洲香蕉免费有线视频| 亚洲影视自拍揄拍愉拍| 成年女人男人免费视频播放| 久久亚洲国产视频| 久视频精品免费观看99| 亚洲免费电影网站| 日韩免费视频在线观看| 全黄A免费一级毛片| 亚洲精品无码Av人在线观看国产| 亚在线观看免费视频入口| 亚洲精品中文字幕无码AV| 成人免费看吃奶视频网站| 粉色视频成年免费人15次| 亚洲熟妇丰满多毛XXXX| 免费观看无遮挡www的视频| 亚洲sm另类一区二区三区| 中文字幕精品无码亚洲字| 99久久国产免费-99久久国产免费 99久久国产免费中文无字幕 | 亚洲精品成人片在线播放| 91久久青青草原线免费| 亚洲日韩精品无码专区网址| 99久热只有精品视频免费看| 亚洲一区二区三区高清不卡| 亚洲成AV人网址| 99久9在线|免费| 亚洲AV无码国产剧情| 免费看美女被靠到爽| 国产精品免费大片一区二区| 久久亚洲日韩看片无码| 免费特级黄毛片在线成人观看| 一级毛片高清免费播放| 亚洲欧洲久久精品| 亚洲综合av永久无码精品一区二区|