filosofos chinos

lillo
11 de Julio del 2005
hola,necesito ayuda sobre un programa que debe hacer lo siguiente:

Se trata de que por la consola de comandos tengo que introducir un numero de filosofos.de tal forma que se sientan en una mesa.hay tantos palillos para comer como filosofos.cada filosofo puede comer sipre que esten libres los palillos de su izquierda y derecha.Claro si uno come, los de al lado no pueden,estaran pensando.Entonces lo que me debe salir por pantalla es esto: el filosofo 2 come con los palillos 2 y 1 durante 1 segundo.

tengo que hacer 3 clases: principal,palillos y filosofos.

en la principal me dicen que tengo que usar hilos, pero no tengo ni idea de como usarlo, ni de como encadenar las distintas clases ya que estan en archivos diferentes.Si alguien me puede ayudar se lo agradeceria.muxas gracias

roberto
11 de Julio del 2005
package hilos;
public class Hilo implements Runnable{
int num=0;
public Hilo(int num){
this.num=num;
}
public void run(){
for(int i=0;i<=1000;i++)
System.out.println("este es el hilo:"+num+"cuyo contador va por:"+i);
}


//demas metodos

}





package pruebas
import hilos;
public class Prueba{

Trhead hilo1,hilo2;
hilo1=new Thread(new Hilo(1));
hilo2=new Thread(new Hilo(2));

hilo1.start();
hilo2.start();
}




Aqui tienes un ejemplo sencillo,lo que haria seria asignar un quantum a cada hilo(hilo1 e hilo2).
Hay otra forma que es extendiendo de la clase Thread,pero este metodo es mejor,porque te permite que
la clase Hilo extienda de otra clase que necesites,mientras que de la otra forma no,ya que java no soporta multiherencia