Ver Mensaje Individual
  #9  
Antiguo 21-07-2011
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
Cita:
Empezado por oscarac Ver Mensaje
lo hice funcionar con hilos
en el evento onClick del button pongo esto y se ejecuta

Código Delphi [-]
 
  TMiHilo.Create(False);
....
Código Delphi [-]
 
frmrecepcion.tblingreso.open;
es normal eso? o me falto declarar algo
Oscarac, ten en cuenta que la implementación de código o aplicaciones multihilos no es tan sencilla a cómo lo has hecho. El código frmrecepcion.tblingreso.open; te compilará perfectamente sin ningún problema. Sin embargo, este código te generará errores al momento de ejecución ya que por ley dos hilos no pueden escribir sobre una misma variable al mismo tiempo. Es lo que tú estás haciendo con esa línea de código. Estás violentando la ley y esto se verá reflejado en al momento de ejecución.

La clase TThread define un procedimiento especial llamado Synchronize. Este procedimiento es la abstracción más alta de lo que se conoce cómo semáforos. Todas las lecturas/escrituras que hagas a frmrecepcion deben ser por medio del procedimiento Synchronize. Para hacer las lecturas/escrituras por medio de Syncronize, todas éstas deben estar encapsuladas en procedimientos separados.

Saludos,
Chris
__________________
Perfil Github - @chrramirez - Delphi Blog - Blog Web
Responder Con Cita