⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 servidorllamadasremotas.java

📁 java 实现的P2P Chord算法。chord算法是结构式的P2P搜索与管理协议
💻 JAVA
字号:
package org.mikel.jchord.red;/* * ServidorLlamadasRemotas.java * * Created on 8 de enero de 2005, 16:19 */import java.net.*;import java.io.*;import org.mikel.jchord.Nodo;/** * * @author mikel */public class ServidorLlamadasRemotas extends Thread {        int puerto;    Nodo nodoDue駉;    ServerSocket ss;    private int estado = 0;    private boolean finalizar = false;        /**     * Creates a new instance of ServidorLlamadasRemotas     * @param puerto     * @param nodoDue駉     */    public ServidorLlamadasRemotas(int puerto, Nodo nodoDue駉) {                this.puerto = puerto;        this.nodoDue駉 = nodoDue駉;        this.setEstado(0);        this.setFinalizar(false);                    }        public void run() {        System.out.println("Inciando Servidor nodo Chord en puerto "+puerto+"...");        try{                        this.ss=new ServerSocket(puerto);            //System.out.println("OK");            finalizar = false;            //GestorPooling gp = new GestorPooling(nodoDue駉.getPropiedades().getTama駉PoolThreads());            setEstado(1);            while(finalizar!=true){                                try{                //    System.out.println("SRV "+puerto+" preparado para accept()");                    Socket cliente = ss.accept();                //    System.out.println("SRV "+puerto+" sirviendo peticion");                    cliente.setReuseAddress(true);                                        //System.out.println("Cliente aceptado en serv.Chord. reuse: "+ss.getReuseAddress());                    GestorLlamadaRemota g = new GestorLlamadaRemota(cliente,nodoDue駉);                    //gp.a馻dir(g);                    Thread t = new Thread(g);                    t.start();                                    } catch(IOException IOEx){                    System.out.println("No se ha podido atender a cliente: "+IOEx.getMessage());                                    }            }            try{                ss.close();            } catch(IOException IOEx){                System.out.println("No se ha podido cerrar socket servidor: "+IOEx.getMessage());            }        } catch(IOException IOEx){            System.out.println("No se ha podido iniciar servidor: "+IOEx.getMessage());            setEstado(-1);                    }    }    public void parar(){        finalizar = true;    }        public int getEstado() {        return estado;    }        public void setEstado(int estado) {        this.estado = estado;    }        public boolean isFinalizar() {        return finalizar;    }        public void setFinalizar(boolean finalizar) {        this.finalizar = finalizar;    }    }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -