Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   MS SQL Server (https://www.clubdelphi.com/foros/forumdisplay.php?f=23)
-   -   procesar mensajes mientras se abre una query. (https://www.clubdelphi.com/foros/showthread.php?t=61964)

potlanos 28-11-2008 09:58:26

procesar mensajes mientras se abre una query.
 
hola, hay alguna forma de poder procesar mensajes ( cambiar el caption de un label o una barra de progreso ) mientras se hace un open de un query?

gracias
potlanos

Neftali [Germán.Estévez] 28-11-2008 11:00:19

Deberías crear un nuevo thread; en el mismo no vas a poder.
Otra opción (aunque esta no la he probado) es utilizar parametros/opciones de la consulta (si las tiene). Por ejemplo ADO (que es donde yo lo he visto) posee en la opciones la posibilidad de definir la consulta para que se ejecute de forma "no-bloqueante" (repito, que no lo he probado).
Si alguien lo ha probado que nos de su opininión.

Segun la ayuda:

Código:

eoAsyncExecute  
The command is executed asynchronously.
eoAsyncFetch   
The command fetches remaining rows after the initial quantity specified in the Cache property asynchronously.
eoAsyncFetchNonBlocking   
Execution is performed without blocking the thread.
eoExecuteNoRecords   
A command or stored procedure that does not return. If any rows are retrieved, they are discarded and not returned.


potlanos 28-11-2008 11:42:47

como hago de crear otro thread,no se que quieres decir...

gracias..

Neftali [Germán.Estévez] 28-11-2008 12:05:46

Crear un thread se refiere a crear un hilo de ejecución diferente al principal de la aplicación. Para ello Delphi provee la clase TThread.
Se trata de programar determinadas operaciones para que se ejecuten en un hilo diferente; Tiene algunas restricciones de uso, pero te puede servir.

Si buscas en los foros hay muchos hilos y encontrarás ejemplos. No es trivial, pero con un poco de práctica no es difícil.

En el directorio de Demos de Delphi también hay algun ejemplo sobre threads.

No te pongo links, porque tú mismo puedes encontrar los que quieras y más; Basta con que en google escribas algo como "Delphi threads" y obtendrás más de lo que necesitas.


La franja horaria es GMT +2. Ahora son las 06:03:53.

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