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

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

?? 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:

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品国产三级国产普通话蜜臀 | 成人综合激情网| 精品久久久久久综合日本欧美| 同产精品九九九| 欧美一区三区二区| 国产主播一区二区| 国产精品人成在线观看免费 | 久久国产精品区| 26uuu精品一区二区三区四区在线| 国产精品主播直播| 亚洲天天做日日做天天谢日日欢 | 久久久国产午夜精品 | 亚洲成人一区二区在线观看| 欧美美女喷水视频| 国产一区二区电影| 亚洲精品中文在线| 日韩精品一区二区三区在线观看| 国产在线播放一区| 亚洲免费电影在线| 日韩精品一区二区在线| 成人黄动漫网站免费app| 一区二区高清在线| 久久综合久久99| 一道本成人在线| 蜜臀av性久久久久蜜臀av麻豆| 久久奇米777| 91免费观看在线| 麻豆成人91精品二区三区| 国产精品你懂的| 91精品国产一区二区人妖| 国产成人久久精品77777最新版本| 一区二区三区在线免费观看| 日韩欧美一区二区免费| eeuss鲁一区二区三区| 日韩和欧美一区二区三区| 中文字幕第一区第二区| 欧美男同性恋视频网站| 成人h动漫精品一区二区| 日韩电影在线观看网站| 亚洲色图都市小说| 精品国产乱码久久久久久久| 日本高清不卡一区| 国产成a人亚洲| 秋霞国产午夜精品免费视频| 亚洲激情校园春色| 国产欧美一区视频| 欧美一区二区三区成人| 日本精品一级二级| 成人在线综合网站| 久久国产精品免费| 午夜精品aaa| 亚洲欧美日韩国产综合| 国产欧美日韩三区| 久久婷婷一区二区三区| 777xxx欧美| 欧美丝袜丝nylons| 在线日韩国产精品| 色综合中文字幕国产| 久久精品国产精品亚洲红杏| 亚洲www啪成人一区二区麻豆| 国产精品国产自产拍在线| 久久亚洲精精品中文字幕早川悠里 | 悠悠色在线精品| 国产精品第一页第二页第三页| 精品国产乱码久久久久久久| 日韩视频中午一区| 4438x亚洲最大成人网| 欧美性videosxxxxx| 91免费观看国产| 97久久精品人人做人人爽| 成人涩涩免费视频| 成人av在线资源网站| 东方欧美亚洲色图在线| 成人国产一区二区三区精品| proumb性欧美在线观看| 成人综合在线视频| 不卡一区二区中文字幕| 成人黄色综合网站| 99re这里都是精品| 日本韩国一区二区三区视频| 色综合视频在线观看| 色综合久久久网| 欧美伊人久久大香线蕉综合69| 日本久久一区二区三区| 精品视频一区二区三区免费| 6080国产精品一区二区| 欧美α欧美αv大片| 欧美xxxxxxxxx| 国产婷婷一区二区| 18欧美乱大交hd1984| 亚洲一区视频在线| 免费欧美日韩国产三级电影| 久久av中文字幕片| 国产91精品精华液一区二区三区| 不卡一区在线观看| 欧美在线观看禁18| 日韩一区二区在线播放| 久久综合久久99| 日韩码欧中文字| 亚洲高清在线精品| 麻豆精品视频在线| 成人午夜激情在线| 欧美色区777第一页| 91精品国产色综合久久| 精品国产乱码久久久久久图片 | 97精品国产露脸对白| 色综合咪咪久久| 欧美日韩国产免费一区二区| 精品美女一区二区三区| 中文字幕乱码一区二区免费| 亚洲综合在线第一页| 麻豆高清免费国产一区| 福利一区二区在线| 欧美日韩午夜在线视频| 久久婷婷国产综合国色天香| 综合激情网...| 日日夜夜免费精品视频| 国产v综合v亚洲欧| 欧美日韩亚洲国产综合| 久久九九久久九九| 一区二区三区成人| 国产乱国产乱300精品| 91精品91久久久中77777| 久久久久青草大香线综合精品| 中文字幕一区二区三| 秋霞国产午夜精品免费视频| 97久久精品人人做人人爽| 日韩欧美二区三区| 一区二区在线观看av| 国产一区激情在线| 欧美在线不卡视频| 久久精品一区二区三区不卡| 夜夜精品浪潮av一区二区三区| 狠狠色丁香婷综合久久| 欧美日韩免费观看一区三区| 中文幕一区二区三区久久蜜桃| 日韩国产欧美视频| 91麻豆免费看片| 精品理论电影在线| 婷婷丁香久久五月婷婷| av在线不卡免费看| 亚洲精品一线二线三线无人区| 亚洲影院免费观看| 91天堂素人约啪| 国产亚洲美州欧州综合国| 日本欧美加勒比视频| 色老汉av一区二区三区| 国产调教视频一区| 国模大尺度一区二区三区| 欧美日本一区二区三区四区| 亚洲欧美精品午睡沙发| 粉嫩一区二区三区在线看| 欧美成人精品高清在线播放| 日韩精品一级二级 | 99久久久精品| 国产视频一区二区在线| 国产在线看一区| 日韩欧美国产成人一区二区| 亚洲成人av在线电影| 欧美综合久久久| 亚洲老妇xxxxxx| 色偷偷久久人人79超碰人人澡| 国产精品天干天干在线综合| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 国产乱码精品1区2区3区| 久久这里都是精品| 国产综合色视频| 国产亚洲福利社区一区| 国产一区视频在线看| 国产欧美一区二区精品婷婷| 国产精品1区二区.| 国产精品欧美综合在线| av一区二区久久| 亚洲精品免费电影| 欧美性生活一区| 日韩成人精品在线观看| 欧美r级在线观看| 九一久久久久久| 久久亚洲一区二区三区四区| 国产大陆a不卡| 国产精品久久久爽爽爽麻豆色哟哟| 成熟亚洲日本毛茸茸凸凹| 中文字幕一区av| 欧美亚男人的天堂| 秋霞av亚洲一区二区三| 久久一区二区三区四区| 成人综合激情网| 亚洲综合av网| 欧美一区二区在线看| 国产又黄又大久久| 国产精品成人在线观看| 欧美吻胸吃奶大尺度电影| 日韩电影在线观看一区| 日本一区二区在线不卡| 欧美亚洲综合在线| 精品亚洲aⅴ乱码一区二区三区| 国产欧美一区二区三区网站| 欧美做爰猛烈大尺度电影无法无天| 三级不卡在线观看| 国产精品无人区|