Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-12-2008
JXJ JXJ is offline
Miembro
 
Registrado: abr 2005
Posts: 2.475
Poder: 22
JXJ Va por buen camino
Question pool of threads

¿como se puede implementar en delphi un pool of threads?

estoy pensando que seria bueno digamos para cuando
se descagan, varios archivos a la vez. como los download managers.

o al actualizar un mismo nuestros programas y requerimos de bajar varios
archivos a la vez o de diferentes servidores.

al enviar archivos en aplicaciones de chat.

al enviar video y audio en aplicaciones dechat.

o al tener varias ventanas abiertas en chats tipo
messenger. y estar chateando con varios contactos.

y por supuesto, al ejecutar querys y responder a los datos recibidos.

sale gracias por su tiempo.
Responder Con Cita
  #2  
Antiguo 24-12-2008
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 30
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
¡Hola!

El manejo de hilos siempre es interesante, JXJ. Pero ¿por qué no nos planteas con mayor concreción y detalle lo que te gustaría hacer para comenzar a componer ideas?

¿Te refieres a crear una especie de biblioteca o componente genérico para manejo de grupos de hilos de propósito general, o algo así?

Saludos.

Al González.
Responder Con Cita
  #3  
Antiguo 25-12-2008
JXJ JXJ is offline
Miembro
 
Registrado: abr 2005
Posts: 2.475
Poder: 22
JXJ Va por buen camino
mas bien al reves...

hacer un programa, generico, que implemente un pools of threads.

el destino puede ser cualquiera. de los ya dichos. pero me inclino por construir
un download manager.
Responder Con Cita
  #4  
Antiguo 25-12-2008
JXJ JXJ is offline
Miembro
 
Registrado: abr 2005
Posts: 2.475
Poder: 22
JXJ Va por buen camino
veamoslo asi..

tenemos que descargar mas de 10 archivos simultaneamente.

cada archivo en lugar de descargarlo con un thread que use la descarga secuencial y completa, lo descargamos usando un pool of threads por cada uno de los archivos a descargar donde cada hilo del pool of threads, descarge un trozo del archivo. (se supone. que de esta forma la descarga de un archivo es mas rapida.. por que se descargan trozos, chunks del archivo. y no todo el archivo, y los chuncks o trozos, se ensamblan)

algo asi como estos componentes
http://clevercomponents.com/products...e/suitemmd.asp
Responder Con Cita
  #5  
Antiguo 25-12-2008
Delfino Delfino is offline
Miembro
 
Registrado: jul 2003
Ubicación: Madrid
Posts: 974
Poder: 21
Delfino Va por buen camino
Las Indy tienen un componente precisamente para esto, no recuerdo su nombre pq cambio entre las versiones 9 y 10 (el nombre) pero sera facil entonctrarlo en la paleta y tb usarlo ya q solo hay q ligarlo a un componente servidor..
__________________
¿Microsoft? No, gracias..
Responder Con Cita
  #6  
Antiguo 26-12-2008
JXJ JXJ is offline
Miembro
 
Registrado: abr 2005
Posts: 2.475
Poder: 22
JXJ Va por buen camino
delfino..
eso no lo sabia..
aun asi. las indy son mi tormento,,,.. aun no logro hacer funcionar una aplicacion chat.
sin que me de un time out, o se cierra graciosamente...

lo voy a checar, lo de indy con la version 10
pero me gustaria mas una implementacion generica.
para adaptarlo a cualquier otra necesidad que se de.
Responder Con Cita
  #7  
Antiguo 26-12-2008
Avatar de Kipow
Kipow Kipow is offline
Miembro
 
Registrado: abr 2006
Ubicación: Guatemala
Posts: 329
Poder: 19
Kipow Va por buen camino
Pues no lo veo tan dificil utilizando las generics :adorar: yo estoy trabajando algo similar a lo que sugieres vamos a ver si ya con tiempo puedo compartir algo de mi trabajo
Responder Con Cita
  #8  
Antiguo 26-12-2008
Avatar de Julián
Julián Julián is offline
Merodeador
 
Registrado: may 2003
Ubicación: en mi casa
Posts: 2.019
Poder: 10
Julián Va por buen camino
Si lo que quieres es hacer una aplicacion chat, yo tengo hechos una par de componentes llamados tchatserver y tchatclient, que hice para que me sirvieran de base para el ajedrezchat.

Tambien intente hacerlos con INDY y me pasaba los mismo que ati, o peor, timeouts, eventos que no iban, conexiones perdidas, o sea, un verdadero tormento. Asi que los hice con los componentes ICS y me funciona perfectamente, sin un fallo siquiera.

Y tambien tengo por ahí unos componentes para http y ftp que usan threads distintos para cada operación. Aunque usan funciones de la librería wininet, pueden servirte para eso del del "pool of threads".

Luego los busco y los subo a la web por si te interesan. Lo mismo tardo un poco, pues datan de la época del delphi 2.0 y no se ni donde los tengo. Por no hablar de que el código que escribía por aquella época deeb dejar mucho que desear.

Un saludo!
__________________
"la única iglesia que ilumina es la que arde"
Anonimo
Responder Con Cita
  #9  
Antiguo 26-12-2008
Delfino Delfino is offline
Miembro
 
Registrado: jul 2003
Ubicación: Madrid
Posts: 974
Poder: 21
Delfino Va por buen camino
Cita:
aun asi. las indy son mi tormento,,,.. aun no logro hacer funcionar una aplicacion chat.
Eso pasa solo al principio, por ser bloqueantes, pero es un punto a favor no en contra, aqui se explica con mas detalles,
Despues de dominarlos medianamente son lo mejor, potentes y muy eficaces..
__________________
¿Microsoft? No, gracias..
Responder Con Cita
  #10  
Antiguo 04-01-2009
JXJ JXJ is offline
Miembro
 
Registrado: abr 2005
Posts: 2.475
Poder: 22
JXJ Va por buen camino
Thumbs up

Cita:
Empezado por Julián Ver Mensaje
Si lo que quieres es hacer una aplicacion chat, yo tengo hechos una par de componentes llamados tchatserver y tchatclient, que hice para que me sirvieran de base para el ajedrezchat.

Tambien intente hacerlos con INDY y me pasaba los mismo que ati, o peor, timeouts, eventos que no iban, conexiones perdidas, o sea, un verdadero tormento. Asi que los hice con los componentes ICS y me funciona perfectamente, sin un fallo siquiera.

Y tambien tengo por ahí unos componentes para http y ftp que usan threads distintos para cada operación. Aunque usan funciones de la librería wininet, pueden servirte para eso del del "pool of threads".

Luego los busco y los subo a la web por si te interesan. Lo mismo tardo un poco, pues datan de la época del delphi 2.0 y no se ni donde los tengo. Por no hablar de que el código que escribía por aquella época deeb dejar mucho que desear.

Un saludo!
Cita:
Empezado por Kipow Ver Mensaje
Pues no lo veo tan dificil utilizando las generics :adorar: yo estoy trabajando algo similar a lo que sugieres vamos a ver si ya con tiempo puedo compartir algo de mi trabajo
Cita:
Empezado por JXJ Ver Mensaje
delfino..
una implementacion generica, para adaptarlo a cualquier otra necesidad que se de.
De favor, en cuanto puedan poner sus codigos fuente para aprender de ellos, muchas gracias
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Threads en delphi gesjug Varios 7 30-09-2008 13:25:57
Manejo de Pool Display Y cajon de dinero look OOP 1 07-11-2007 21:39:00
Metricas para JBOSS ejb pool Arcioneo JAVA 0 14-09-2007 14:25:08
uso de threads JULIPO API de Windows 2 25-07-2007 16:09:06
Pool de transacciones? jlcasih Conexión con bases de datos 0 09-06-2006 16:48:35


La franja horaria es GMT +2. Ahora son las 03:47:40.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi