Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-05-2007
Avatar de gluglu
[gluglu] gluglu is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Málaga - España
Posts: 1.455
Poder: 23
gluglu Va por buen camino
Ya he detectado el origen del problema.

Resulta que al hacer un Terminate del Thread, realmente no lo está 'cancelando' o 'abortando' en el proceso que se encuentre en ese momento, que precisamente es el Sleep(600000) en mi caso (10 minutos).

He bajado el tiempo de Sleep a 30 segundos, y si paro el proceso y salgo de la aplicación, al cabo de máximo 30 segundos se termina correctamente la aplicación principal.

Investigaré por ese punto y ya informaré.
__________________
Piensa siempre en positivo !
Responder Con Cita
  #2  
Antiguo 06-05-2007
Avatar de droguerman
droguerman droguerman is offline
Miembro
 
Registrado: abr 2005
Ubicación: tierra
Posts: 999
Poder: 22
droguerman Va por buen camino
para evitar ese cuelgue quizás puedas editar tu hebra de la siguiente forma:
Código Delphi [-]
type
  TMainform = class(TForm)
  ....
  TMyThread = class(TThread)
  private
    ejecutar: integer; 
  protected
    procedure Execute; override;
  public
  end;

....
Código Delphi [-]

procedure TMyThread.Execute;
begin
 
  repeat
    ....
    if ejecutar=10 then
    begin
       //aqui pones tu código 
       ejecutar := 0;  
    end
    else
       ejecutar := ejecutar +1; 
    Sleep(6000);  // 1 Minute
 
  until Terminated;
 
end;
__________________
self.free;
Responder Con Cita
  #3  
Antiguo 06-05-2007
Avatar de gluglu
[gluglu] gluglu is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Málaga - España
Posts: 1.455
Poder: 23
gluglu Va por buen camino
Gracias por tu ayuda.

Ya conseguí solucionar el problema. La solución completa está aqui.

Al final incluí un TTimer y hago uso de la propiedad Tag de dicho Timer para comprobar si debo ejecutar el Thread.
__________________
Piensa siempre en positivo !
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Modularizar el programa principal byivan Varios 21 18-01-2007 00:55:22
Thread bendito thread...se me pierde la ventana Seba.F1 API de Windows 5 02-02-2006 00:16:30
Cerrar el programa al acabar un thread tortelini API de Windows 2 07-04-2005 22:26:18
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 19:24:42.


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