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

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

?? gossip.java

?? JGRoups源碼
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
// $Id: Gossip.java,v 1.9 2005/10/31 10:56:31 belaban Exp $package org.jgroups.demos;import org.jgroups.*;import org.jgroups.util.Util;import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.io.ByteArrayOutputStream;import java.io.ObjectOutputStream;import java.io.Serializable;import java.util.Random;import java.util.Vector;/** * Demos that tries to graphically illustrating the gossip (or pbcast) protocol: every sender periodically sends * a DRAW command to a random subset of the group members. Each member checks whether it already received the * message and applies it if not yet received. Otherwise it discards it. If not yet received, the message will * be forwarded to 10% of the group members. This demo is probably only interesting when we have a larger * number of members: a gossip will gradually reach all members, coloring their whiteboards. */public class Gossip implements Runnable, WindowListener, ActionListener, ChannelListener {    private Graphics graphics=null;    private Frame mainFrame=null;    private JPanel panel=null, sub_panel=null;    private final ByteArrayOutputStream out=new ByteArrayOutputStream();    private final Random random=new Random(System.currentTimeMillis());    private Button gossip_button, clear_button, leave_button;    private final Font default_font=new Font("Helvetica", Font.PLAIN, 12);    private final String groupname="GossipGroupDemo";    private Channel channel=null;    private Thread receiver=null;    private int member_size=1;    private final Vector members=new Vector();    private int red=0, green=0, blue=0;    private Color default_color=null;    boolean first=true;    final double subset=0.1;    Address local_addr=null;    TrafficGenerator gen=null;    long traffic_interval=0;    public Gossip(String props, long traffic) throws Exception {        channel=new JChannel(props);        channel.addChannelListener(this);        channel.setOpt(Channel.AUTO_RECONNECT, Boolean.TRUE);        traffic_interval=traffic;        if(traffic_interval > 0) {            gen=new TrafficGenerator();            gen.start();        }    }    public static void main(String[] args) {        Gossip gossip=null;        String props=null;        long traffic=0;        for(int i=0; i < args.length; i++) {            if("-help".equals(args[i])) {                System.out.println("Gossip [-traffic_interval <interval in msecs>] [-help]");                return;            }            if("-traffic_interval".equals(args[i])) {                traffic=Long.parseLong(args[++i]);                continue;            }        }        // props="UDP:PING:FD:STABLE:NAKACK:UNICAST:FRAG:FLUSH:GMS:VIEW_ENFORCER:PERF(trace=;details=true)";        /**         props="TCP(start_port=8000):" +         "TCPPING(num_initial_members=1;timeout=3000;port_range=2;"+         "initial_hosts=daddy[8000],terrapin[8000],sindhu[8000]):" +         "FD:" +         "pbcast.PBCAST(gossip_interval=5000;gc_lag=50):" +         "UNICAST:" +         "FRAG:" +         "pbcast.GMS";         // "PERF(trace=true;details=true)";         **/        props="UDP(mcast_addr=224.10.10.100;mcast_port=5678;ip_ttl=32):" +                "PING:" +                // "FD(shun=true;timeout=5000):" +                "pbcast.FD(timeout=3000):" +                "VERIFY_SUSPECT(timeout=2000;num_msgs=2):" +                "pbcast.PBCAST(desired_avg_gossip=8000;mcast_gossip=true;gc_lag=30;max_queue=20):" +                "UNICAST:" +                "FRAG:" +                "pbcast.GMS"; // :" + // ;join_timeout=20):" +        // "PERF(trace=true;details=true)";        try {            gossip=new Gossip(props, traffic);            gossip.go();        }        catch(Exception e) {            System.err.println(e);            System.exit(0);        }    }    private void selectColor() {        red=(Math.abs(random.nextInt()) % 255);        green=(Math.abs(random.nextInt()) % 255);        blue=(Math.abs(random.nextInt()) % 255);        default_color=new Color(red, green, blue);    }    public void go() {        try {            channel.connect(groupname);            local_addr=channel.getLocalAddress();            startThread();            mainFrame=new Frame();            panel=new MyPanel();            sub_panel=new JPanel();            mainFrame.setSize(250, 250);            mainFrame.add("Center", panel);            clear_button=new Button("Clear");            clear_button.setFont(default_font);            clear_button.addActionListener(this);            gossip_button=new Button("Gossip");            gossip_button.setFont(default_font);            gossip_button.addActionListener(this);            leave_button=new Button("Leave & Exit");            leave_button.setFont(default_font);            leave_button.addActionListener(this);            sub_panel.add("South", gossip_button);            sub_panel.add("South", clear_button);            sub_panel.add("South", leave_button);            mainFrame.add("South", sub_panel);            mainFrame.addWindowListener(this);            mainFrame.setVisible(true);            setTitle();            graphics=panel.getGraphics();            graphics.setColor(default_color);            mainFrame.setBackground(Color.white);            mainFrame.pack();            gossip_button.setForeground(Color.blue);            clear_button.setForeground(Color.blue);            leave_button.setForeground(Color.blue);        }        catch(Exception e) {            System.err.println(e);            return;        }    }    void startThread() {        receiver=new Thread(this, "GossipThread");        receiver.setPriority(Thread.MAX_PRIORITY);        receiver.start();    }    void setTitle() {        String title="";        if(local_addr != null)            title+=local_addr;        title+=" (" + member_size + ") mbrs";        mainFrame.setTitle(title);    }    public void run() {        Object tmp;        Message msg=null;        Command comm;        boolean fl=true;        Vector mbrs;        ObjectOutputStream os;        while(fl) {            try {                tmp=channel.receive(0);                // System.out.println("Gossip.run(): received " + tmp);                if(tmp == null) continue;                if(tmp instanceof View) {                    View v=(View)tmp;                    member_size=v.size();                    mbrs=v.getMembers();                    members.removeAllElements();                    for(int i=0; i < mbrs.size(); i++)                        members.addElement(mbrs.elementAt(i));                    if(mainFrame != null)                        setTitle();                    continue;                }                if(tmp instanceof ExitEvent) {                    // System.out.println("-- Gossip.main(): received EXIT, waiting for ChannelReconnected callback");                    break;                }                if(!(tmp instanceof Message))                    continue;                msg=(Message)tmp;                comm=null;                Object obj=msg.getObject();                // System.out.println("obj is " + obj);                if(obj instanceof Command)                    comm=(Command)obj;                else                    if(obj instanceof Message) {                        System.out.println("*** Message is " + Util.printMessage((Message)obj));                        Util.dumpStack(true);                    }                    else {                        if(obj != null)                            System.out.println("obj is " + obj.getClass() + ", hdrs are" + msg.printObjectHeaders());                        else                            System.out.println("hdrs are" + msg.printObjectHeaders());                        Util.dumpStack(true);                    }                switch(comm.mode) {                    case Command.GOSSIP:                        if(graphics != null) {                            colorPanel(comm.r, comm.g, comm.b);                            comm.not_seen.removeElement(local_addr);                            if(comm.not_seen.size() > 0) { // forward gossip                                Vector v=Util.pickSubset(comm.not_seen, subset);                                out.reset();                                os=new ObjectOutputStream(out);                                os.writeObject(comm);                                os.flush();                                for(int i=0; i < v.size(); i++) {                                    channel.send(new Message((Address)v.elementAt(i), null, out.toByteArray()));                                }                            }                        }                        break;                    case Command.CLEAR:

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
美女视频黄a大片欧美| 亚洲综合在线观看视频| 91精品国产一区二区三区蜜臀| 色综合久久久久综合体| 91论坛在线播放| 在线日韩一区二区| 欧美人妇做爰xxxⅹ性高电影| 日本电影欧美片| 欧美美女一区二区三区| 日韩一区二区三区av| 欧美精品一区二区久久婷婷| 2017欧美狠狠色| 国产精品久久久久精k8| 亚洲一区二区三区中文字幕| 亚洲线精品一区二区三区 | 国产成人自拍在线| 国产成人免费在线视频| 日本一道高清亚洲日美韩| 99国产精品久久久久| 成人av网在线| 欧美吻胸吃奶大尺度电影 | 国产精品三级av| 亚洲日本在线观看| 婷婷成人激情在线网| 国产在线不卡一卡二卡三卡四卡| 国产99久久久久| 欧美日韩亚洲综合一区| 精品国产乱码久久久久久浪潮| 中文字幕在线视频一区| 午夜电影网亚洲视频| 国产成人精品亚洲午夜麻豆| 欧日韩精品视频| 亚洲精品在线免费播放| 国产精品二三区| 午夜不卡av免费| 成人网男人的天堂| 日韩一区二区三区高清免费看看| 欧美激情一区二区三区| 日韩综合在线视频| 91老师片黄在线观看| 久久人人超碰精品| 婷婷国产v国产偷v亚洲高清| 99国产精品久| 国产日韩成人精品| 秋霞av亚洲一区二区三| 91国产成人在线| 欧美极品少妇xxxxⅹ高跟鞋| 免费日本视频一区| 欧美日韩一卡二卡| 中文字幕乱码亚洲精品一区| 蜜臀va亚洲va欧美va天堂 | 久久嫩草精品久久久久| 亚洲国产精品久久不卡毛片 | 一区二区三区在线免费视频| 国产精品 日产精品 欧美精品| 在线播放一区二区三区| 一区二区在线观看视频| 国产sm精品调教视频网站| 精品美女在线观看| 日本特黄久久久高潮| 欧美亚州韩日在线看免费版国语版| 国产精品天美传媒沈樵| 国产高清久久久久| 久久久久久99久久久精品网站| 蜜桃视频一区二区三区| 日韩一区二区高清| 日韩高清不卡一区| 日韩一区二区影院| 蜜桃av噜噜一区二区三区小说| 制服丝袜国产精品| 视频在线观看91| 日韩一区二区三区视频在线| 美女视频黄久久| 精品对白一区国产伦| 国产一区三区三区| 国产精品素人视频| 99久久久免费精品国产一区二区| 亚洲欧美中日韩| 91免费国产在线观看| 亚洲一区二区在线视频| 精品视频在线视频| 蜜臀av在线播放一区二区三区| 日韩一区二区三区电影在线观看| 久久激情综合网| 国产日韩影视精品| 一道本成人在线| 极品少妇xxxx精品少妇偷拍| 日韩欧美中文一区二区| 日产精品久久久久久久性色| 91精品久久久久久久91蜜桃| 日本美女一区二区三区视频| 欧美一区二区三区在线观看视频| 久久黄色级2电影| 国产色一区二区| 色婷婷久久久久swag精品| 亚洲国产美国国产综合一区二区| 欧美一区二区黄色| 成人综合在线观看| 亚洲国产精品一区二区www| 日韩一区二区在线看片| 成人精品亚洲人成在线| 一区二区国产盗摄色噜噜| 日韩精品影音先锋| av色综合久久天堂av综合| 性做久久久久久免费观看| 国产三级欧美三级| 在线视频国内自拍亚洲视频| 91一区二区在线| 国产精品理论在线观看| 欧美性生活大片视频| 极品少妇xxxx精品少妇偷拍| 亚洲少妇中出一区| 精品欧美一区二区三区精品久久 | 国产一区二区精品在线观看| 亚洲伦理在线精品| 欧美大白屁股肥臀xxxxxx| 色婷婷亚洲婷婷| 国产一区二区伦理| 日韩 欧美一区二区三区| 亚洲日本va午夜在线电影| 精品裸体舞一区二区三区| 日本高清不卡在线观看| 国产精品一级黄| 日韩精品色哟哟| 夜夜亚洲天天久久| 日韩一区在线免费观看| 精品少妇一区二区三区免费观看 | 日韩欧美电影一区| 欧美午夜精品一区| 国产一区二区女| 欧美在线观看一区| 国产福利不卡视频| 婷婷中文字幕一区三区| ...xxx性欧美| 久久蜜臀中文字幕| 日韩欧美不卡一区| 欧美精品在线观看播放| 99久久伊人网影院| 国产99久久久国产精品| 国产另类ts人妖一区二区| 蜜臀av性久久久久蜜臀aⅴ流畅| 亚洲国产日产av| 亚洲精品成人天堂一二三| 国产精品污网站| 中文字幕不卡一区| 久久九九久精品国产免费直播| 欧美v国产在线一区二区三区| 欧美精品久久99| 欧美剧在线免费观看网站| 精品视频1区2区| 欧美日韩精品欧美日韩精品| 欧美日韩一区二区不卡| 欧美日韩高清一区| 日本一区二区三区免费乱视频| 欧美美女一区二区在线观看| 欧美日韩高清一区二区三区| 欧美日韩一区二区三区四区五区 | 美女www一区二区| 日韩电影一二三区| 日本中文字幕一区| 国内精品伊人久久久久av影院| 久久精品国产在热久久| 国产精品一区二区黑丝| 国产精品一区久久久久| www.欧美亚洲| 在线观看av不卡| 欧美精品自拍偷拍| 精品国产乱码久久久久久久久| 精品国产乱码久久久久久免费| 国产日韩精品一区二区浪潮av| 亚洲国产精品v| 一区二区三区四区不卡在线| 肉丝袜脚交视频一区二区| 日本中文一区二区三区| 国产精品综合网| 色综合久久88色综合天天| 欧美精品久久天天躁| 中文字幕日韩av资源站| 国产精品高潮呻吟久久| 一区二区三区四区中文字幕| 一区二区三区在线免费| 老司机午夜精品| 成人免费毛片a| 欧美久久久久久久久久| 久久在线观看免费| 一区二区三区日韩欧美精品| 免费成人深夜小野草| av网站一区二区三区| 555www色欧美视频| 国产精品麻豆久久久| 亚洲一区av在线| 国产成人在线看| 欧美日韩激情一区二区三区| 欧美激情在线一区二区| 亚洲一区二区美女| 成人在线综合网站| 日韩免费成人网| 亚洲欧洲综合另类| 高清日韩电视剧大全免费| 欧美日韩亚洲丝袜制服|