Generar palabras de la mejor manera.

Iniciado por NetJava, 31 Marzo 2011, 12:18 PM

0 Miembros y 1 Visitante están viendo este tema.

NetJava

Buenas,

bueno, pues hice la prueba como dije, y el problema que comente de las excepciones jejeje se debía a que con los hilos y con los bucles a toda lechela BD no respondia bien... pero el problema principalmente era en la gestión de los hilos.

De lo que se trata es de generar todas las palabras posibles de la manera más rápida y guardarlo en una BD. Sobre la ultima forma de hacerlo, es "más rápida"... Lo que hace la cosa lenta es insertar en la BD. Cuando se generan palabras y se guardan en un ArrayList se hace casi al instante, pero ya en la BD se relentiza bastante.

Lo que plantee de que un hilo generase y aguardase en un ArrayList las palabras, y que cuando llegase a 1000000, por ejemplo, otro hilo lo guardase en la BD, mientras otro hilo se hacía cargo se volver a generar y guardar en otro arraylist, yBLABLABLABLA todo en paralelo:

Se coge1..
Se guarda1         Se coge2
Se guarda2         Se coge1
Se guarda1         Se coge2

Bueno pues esto tal cual no vale jejeje por que el tiempo de "coger" no es para nada equivalente al de "guardar".

Bueno, pues ya que he empezado a escribir, termino... Después hice la aplicación que "coge" las palabras por ejemplo 10.000.000 que lo hace en apenas 3 ó 5 minutos y después se dedica a guardar todas esas palabras, y tarda algo menos que la primera aplicación, la que explique con código al principio del post.

Jajajajajaja me voy callando. Por qué tantos bucles¿? Pues nada es lo que se utilizo para generar palabras:

5 bucles -> todas las palabras con 5 caracteres.
6 bucles -> todas las palabras con 6 caracteres.
blablablabla

Bueno la verdad es que me he puesto a escribir como si estuviera pensado, sin orden y sin na, así que no se si se entiende algo jajajajaja Si te interesa o tienes alguna duda ya sabes, y cualquier inf perfect.

P.D: Cuando los bucles iban demasiado rápido para la base de datos metía bucles sin instrucciones dentro, para letenrizar las instucciones de inserción. Pero bueno el problema era de los hilos... Se podría pensar que mi problema esq no gestiono bien los hilos, que es cierto, pero no me sirve de nada, la ultima idea, si los hilos no trabajan paralelamente, qii decir, que poner un hilo a la espera mientras otro espera no me vale para ahorrar tiempo. ME CALLO!!!!!

Saludos y gracias!!!



KuraraGNU

Cita de: NetJava en 14 Abril 2011, 15:43 PM

P.D: Cuando los bucles iban demasiado rápido para la base de datos metía bucles sin instrucciones dentro, para letenrizar las instucciones de inserción. Pero bueno el problema era de los hilos... Se podría pensar que mi problema esq no gestiono bien los hilos, que es cierto, pero no me sirve de nada, la ultima idea, si los hilos no trabajan paralelamente, qii decir, que poner un hilo a la espera mientras otro espera no me vale para ahorrar tiempo. ME CALLO!!!!!


No se por que dices tantas veces: Me callo, me dejas to loca.

Pues si, ya parece que mas o menos lo he entendido :P pero bueno, es complejo, si. Lo de controlar que los hilos sean paralelos... No se si lo has conseguido, pero los hilos van cuando quieren (cuando el CPU quiere), es lo primero que me enseniaron y eso de paralelos... es complicado aunque para lo que quieres quizas aparentemente vayan paralelos. Entonces lo solucionaste todo?

NetJava

Pues la verdad esq todavía no, pero con esto de semana santa y el movimiento XD Me tengo que poner... volver a comerme la cabeza, en el buen sentido. Saludos!