Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Procesar mensajes de un hilo (https://www.clubdelphi.com/foros/showthread.php?t=81751)

jars 13-12-2012 22:13:21

Procesar mensajes de un hilo
 
Hola amigos.
Estuve leyendo y buscando informacion pero no puedo dar con un ejemplo.
En una aplicacion necesito disparar un hilo que hace una actualizacion en una bbdd a traves de un servicio de componente RemObject. Necesito que sea en un hilo porque el programa principal no puede perder tiempo en esto aunque sean 100 milisegundos.
La cosa es que no se como hacerlo, si tengo que crear un datamodule y luego una hebra o en la misma hebra crear los componentes y ejecutar, etc.
El programa principal puede recibir varios pedidos de actualizacion y necesito entonces crear una cola para que esta hebra los vaya procesando pero no se como pasarle los parametros a esa cola y que la hebra los procese.
Cualquier ayuda de como crear una cola para la hebra, meterle la informacion desde el hilo principal y que esta los procese sera muy bienvenida.
Gracias

Ñuño Martínez 15-12-2012 20:24:26

La verdad es que no sé hacerlo, pero quiero hacer una aclaración respecto a un concepto que das en tu mensaje:
Cita:

Empezado por jars (Mensaje 451810)
(...) Necesito que sea en un hilo porque el programa principal no puede perder tiempo en esto aunque sean 100 milisegundos. (...)

Lo cierto es que usar hilos no garantiza que tu programa no pierda esos 100 milisegundos. De hecho, las dos únicas posibilidades que conozco y que garantizarían que tu programa no perdiera esos 100 milisegundos serían:
  1. ... que tu ordenador dispusiera de tantos microprocesadores y buses como hilos, algo que ningún ordenador "normal" tiene.
  2. .. que no tengas tantos núcleos pero se pueda reservar uno exclusivamente para un hilo concreto de tu programa (y sólo un hilo). Y aun así, podrías perder tiempo debido a la sincronización de los buses.
Sé que no ayuda mucho, pero lo comento porque a lo mejor no es tan necesario que lo hagas multihilo y puedas hacerlo todo en el mismo hilo, mediante algún otro método de sincronización (interrupciones, por ejemplo).


La franja horaria es GMT +2. Ahora son las 00:12:21.

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