Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-09-2006
ANG4L ANG4L is offline
Miembro
 
Registrado: nov 2005
Posts: 67
Poder: 19
ANG4L Va por buen camino
"background process" y Aplicacion MDI

Buenas gente....

Les consulto, tengo una aplicacion MDI funcionando tranqui, ahora, una nueva funcion, que es bastante compleja al realizarla tarda y no deja mientras seguir trabajando con otras ventanas.

Alguien sabe como lograr una especie de background proccess, para evitar que consuma consumos ?

O algo por el estilo, o algo !

Saludos !
__________________
Moment of chaos....
Responder Con Cita
  #2  
Antiguo 27-09-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Si el proceso que tarda puede dividirse en pasos, por ejemplo, que sea un ciclo, antes de cada paso puedes colocar un Application.ProcessMessages para permitir que el resto de la aplicación procese los mensajes. Si no, puedes montar ese proceso en un hilo (thread) distinto. Delphi facilita el uso de threads mediante la clase TThread. Consulta la ayuda de Delphi para que veas una descripción de lo que hay que hacer.

// Saludos
Responder Con Cita
  #3  
Antiguo 27-09-2006
ANG4L ANG4L is offline
Miembro
 
Registrado: nov 2005
Posts: 67
Poder: 19
ANG4L Va por buen camino
Como anda ud Roman !
Estoy testeando eso que me dijo.... ahora, en teoria las ventanas mdi se ejecutan en Thread ? Porque eso seria una buena solución, desde el principal ir asignadole las prioridades a cada ventana segun el caso !

Sigo con esto, y luego le digo que salio !

Saludos, y gracias (como siempre)
__________________
Moment of chaos....
Responder Con Cita
  #4  
Antiguo 27-09-2006
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 24
maeyanes Va por buen camino
No tanto las ventanas, sino los procesos complejos y tardados que se hacen en cada una. Esto es, abres una ventana MDI de forma normal y si esta ventana realiza un proceso que bloquea toda la aplicación mientras se ejecuta, entonces este proceso lo ejecutas en un thread.


Saludos...
Responder Con Cita
  #5  
Antiguo 27-09-2006
ANG4L ANG4L is offline
Miembro
 
Registrado: nov 2005
Posts: 67
Poder: 19
ANG4L Va por buen camino
Eso mismo, pero cambiando la prioridad a esos procesos desde el principal
__________________
Moment of chaos....
Responder Con Cita
  #6  
Antiguo 27-09-2006
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 24
maeyanes Va por buen camino
Claro que le puedes poner prioridad a cada proceso. La clase TThread tiene una propiedad Priority que se usa para este fin.

Código Delphi [-]
type TThreadPriority = (tpIdle, tpLowest, tpLower, tpNormal, tpHigher,
  tpHighest, tpTimeCritical);

Para mayor información, lee en la ayuda de Delphi sobre la clase TThread.


Saludos...
Responder Con Cita
Respuesta



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
¿cuál es mejor: "close" o "application.terminate"? unreal4u Varios 5 05-03-2007 11:01:19
"ChequeaEsto" elegido el futuro "Killer CLubDelphi" mamcx Noticias 51 31-10-2006 20:56:32
"Problema" al poner fondos a las ventanas de una aplicación mamsantos Lazarus, FreePascal, Kylix, etc. 0 20-06-2006 12:57:05
porque no me reconoce los caracteres "*" ni "%" cuando filtro mrmago Conexión con bases de datos 10 27-01-2006 04:21:16
Error aplicacion corba "no se puede abrir midas.idl" CORBATIN Providers 0 25-08-2004 14:37:37


La franja horaria es GMT +2. Ahora son las 01:20:13.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi