Tema: Servidor Rmi
Ver Mensaje Individual
  #4 (permalink)  
Antiguo 31/03/2008, 13:55
GreenEyed
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 21 años, 2 meses
Puntos: 51
Re: Servidor Rmi

Teoricamente no haria falta el Thread.sleep, a no ser que estes en un S.O. que no permita interrumpir el thread en marcha (en ese caso creo que bastaria con Thread.yield()) ya que cada cliente tendra su socket de comunicacion con el servidor, una vez conectado.

En los sistemas modernos, a no ser que vayas leyendo byte a byte y machaques la CPU, la simple pausa de leer del socket deberia ser suficiente para permitir que otros programas se conectaran.

Pero volviendo a la pregunta, para saber si una variable va a "ser machacada", tecnicamente: que se de una "race condition"*, depende de dónde este declarada la variable, con que ambito y quien puede acceder a ella concurrentemente... Así que sin saber eso no te puedo dar una respuesta categorica, pero si, como es probable, la variable buffer esta declarada en el ambito local de un metodo del servidor, pues no, no la puede machacar otro thread. Si no es una variable local a nivel de metodo, pues "depende".

De todas formas, por lo que describes no acabo de ver como podrias tener dos threads accediendo simultaneamente a esa variable, ya que proceso de actualizacion de software en el servidor solo hay uno, no?

S!
__________________
Para obtener respuestas, pregunta de forma inteligente o si no, pregunta lo que quieras que yo contestaré lo que me dé la gana.