java 实现的P2P Chord算法。chord算法是结构式的P2P搜索与管理协议
源代码在线查看: ejecutorciclico.java
package org.mikel.jchord.red; import org.mikel.jchord.Nodo; /* * EjecutorCiclico.java * * Created on December 1, 2004, 2:47 PM */ /** * * @author mikel */ public class EjecutorCiclico extends Thread { private Nodo nodoDue駉; private boolean finalizar = false; /** * Creates a new instance of EjecutorCiclico * @param nodoDue駉 */ public EjecutorCiclico(Nodo nodoDue駉) { this.nodoDue駉 = nodoDue駉; } public void parar(){ finalizar = true; } public void run(){ while(finalizar!=true){ //System.out.println("thread n"+nodoDue駉.getIdNodo()+ ".run()"); try{ //llamar metodos nodoDue駉.stabilize(); } catch (Exception e){ System.out.println("Error en stabilize(): "+e.getMessage()); } try{ nodoDue駉.fixFingers(); } catch (Exception e){ System.out.println("Error en fixFingers(): "+e.getMessage()); e.printStackTrace(); } try{ nodoDue駉.checkPredecesor(); } catch (Exception e){ System.out.println("Error en checkPredecesor(): "+e.getMessage()); } try{ Thread.sleep(nodoDue駉.getPropiedades().getIntervaloEstabilizacion()); //System.out.println("ESTADO n"+nodoDue駉.getIdNodo().getIntId()+": Predecesor: "+nodoDue駉.getPredecesor().getIntId()+" Sucesor: "+nodoDue駉.getSucesor().getIntId()); } catch (Exception e){ System.out.println("Error en sleep(x): "+e.getMessage()); } } } }