Lo he llevado a cabo pero no he obtenido los resultados que esperaba.
Antes iba cargando todas las expresiones regulares de forma secuencial. Los problemas que surgen de esta implementación son principalmente dos:
- Sólo trabaja con una ER cada vez.
- La dependencia de unas ER a otras hace que el orden de la secuencia de carga de las ERs no pueda alterarse. Por ejemplo, no se puede definir un Natural si antes no se ha definido un Dígito.
El problema de la dependencia queda definitivamente erradicado. Ahora no importa el orden al insertar las ERs.
Sin embargo no se ha ganado tiempo en la carga de todas las ERs, incluso tarda un poco más. Parece ser que apenas trabaja en paralelo y se pasan la mayoría del tiempo bloqueados los hilos esperando que se resuelvan las dependencias y lo que se pueda ganar en determinadas ocasiones que pueda trabajar paralelamente, lo pierde en las comprobaciones de disponibilidad.
A pesar de todo lo considero un gran avance ya que ahora podemos despreocuparnos de las dependencias entre unas ERs y otras.
Puede ser que las secciones críticas de los hilos no estén bien programadas, no soy un experto en el tema. Así que si alguien se anima para revisarlo, es bien recibido.
No hay comentarios:
Publicar un comentario