Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #7  
Antiguo 02-05-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Hola Juan Carlos, muchas gracias por lo de Junior, me has alegrado el día .

Lamentablemente no tengo un ejemplo sobre threads, pero
mira en tu carpeta delphi\demos\threads, allí tienes uno.

La filosofía es mas o menos así:
-Defines la Clase TMihilo = Class (Thread)

- Defines al menos el método Create, si usas el estandard de un Thread, te pide una variable booleana Suspended, Si la pones a true,quiere decir que al crear el Thread, se quedará "suspendido" y tienes que llamar al método Execute para poner en marcha el proceso largo.

- Defines el método Execute, que es donde tendrás todo el proceso "gordo", definiendo una condición de salida if Terminated then Exit, esto significa que si el Thread ha terminado (que salga de ese bucle inmediatamente). Puede ocurrir que el usuario pulse la X para cerrar la ventana, pero los threads se estan ejecutando, así que en el evento OnClose de tu ventana pones Mihilo.Terminated := true; que obligará a finalizar el Thread.

- Si dentro del Thread necesitas actualizar un Label del Form, no puedes hacerlo con un simple Form2.Label.Caption := 'bla blah' precisamente porque es un hilo independiente y puede estar totalmente desincronizado con el Form1; para hacerlo, tienes que crearte un procedure dentro del hilo, en ese ejemplo se llama DoVisualSwap y dentro de esa rutina si llamas a Form2.Label.Caption := 'bla blah' cuando quieras actualizar el label llamas al procedimiento con syncronize(DoVisualSwap). Esto es así por definición de los Threads, no tiene más explicación .

Si te surgen algunas dudas, puedes comentarlas aquí.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
 



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
Problemas con la ejecucion del programa daly Varios 4 18-10-2005 14:39:06
Bloquear la ejecución de un programa. alfredosg19 Varios 2 19-03-2005 18:17:47
Ejecucion de Programa en Kylix karimnot Lazarus, FreePascal, Kylix, etc. 1 03-09-2004 21:33:28
Ejecucion de un programa en una PC silviodp Varios 3 23-01-2004 01:53:09
programa en ejecucion??? Tanix Varios 2 11-12-2003 14:15:39


La franja horaria es GMT +2. Ahora son las 00:55:37.


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