Ver Mensaje Individual
  #5  
Antiguo 16-04-2007
Avatar de Chris
[Chris] Chris is offline
Miembro Premium
 
Registrado: abr 2007
Ubicación: Jinotepe, Nicaragua
Posts: 1.678
Reputación: 19
Chris Va por buen camino
dentro de la unidad el thread podrás encontrar el procedimiento execute, en el realizarás las operaciones y calculos que necesites. Es muy recomendable que utilices un thread para esto. ademas, al momento de hacer el llamado MiThread:= TMiThread.Create; tienes un parámetro llamado CreateSuspended, el cual le indica al sistema si el thread se ejecutará de inmediato luego de ser creado o tu lo iniciarás manualmente con el procedimiento Mithread.Resume;

Si alguna de las operaciones que necesitas son manipular los controles o componentes de algún formulario entonces debes de tener cuidado al utilizar el thread porque sino terminarás con un AccessViolation at .... Para evitar esto tiene que utilizar un procedimiento de la clase TThread llamado syncronize y su forma de utilizado es ...

Código Delphi [-]
TMiThread.ActualizarControles;
begin
 form1.label1.caption := 'x porciendo del proceso completado';
end;

{para llamar al procedimiento anterior desde el procedimiento execute lo haces de la siguiente manera con syncronize}
TMiThread.Execute;
begin
  ...

   Syncronize(ActualizarControles);

  ...

end;

De esta forma te evitaras los fastidios AccessViolatios.

Esto es lo que te puedo decir por ahora, pero siempre ten cuidado con la sincronización porque puedes terminar con un grave bug dentro de tu aplicación.

Última edición por Chris fecha: 16-04-2007 a las 21:10:20.
Responder Con Cita