Java - exclusión mutua

 
Vista:

exclusión mutua

Publicado por Paula (2 intervenciones) el 01/05/2004 17:51:23
Hola, tenia un problema de exclusión mutua y no sabia como resolverlo. Si alguien me puede ayudar, estaré muy agradecida.
Estoy implementando una cache server de dos niveles y el problema es el siguiente:
Tengo una colección de Hilos que atienden a cada cliente, cada hilo debe llamar a un método (el planificador de la cache de segundo nivel), pero solo puede ser llamado por uno de estos a la ves. El problema es que este método debe utilizar dos recursos (la tabla de memoria y un contador de elementos de la tabla). Los dos recursos no pueden estar sincronizados de manera que un solo hilo pueda acceder a la ves porque esto afectaría al rendimiento de la cache (la idea es que muchos hilo puedan acceder a la tabla de memoria al mismo tiempo, pero cuando se este ejecutando el planificador, solo este pueda acceder a la misma)
Por la particularidad del problema pienso que los monitores que me ofrece java no solucionan mi problema.

Muchas gracias,

Paula
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:exclusión mutua

Publicado por Oscar (661 intervenciones) el 02/05/2004 00:07:19
Hola, antes de que el hilo mante a llamar el metodo que accesa la tabla de memoria, revisa si el planificador esta corriendose, de ser asi haz que el hilo se duerma. Cuando el planificador termine de hacer su tarea entonces que manda llamar el notifyall para que todos los hilos que han tratado de usar la tabla se despierten y continuen con su labor.
Saludos
Oscar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar