Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-11-2007
8051 8051 is offline
Registrado
 
Registrado: oct 2007
Ubicación: Bilbao - España
Posts: 7
Poder: 0
8051 Va por buen camino
Question AntiFreeze en aplicación en C++

Saludos compañeros!

Me explico de forma breve.Tengo una aplicación en Builder C++ desde la que se ofrecen varios servicios para elegir, botones, menus e información en pantalla.

El caso es que durante unos intervalos de tiempo preprogramados la aplicación ataca mediante consultas a una DB-Interbase alojada en un servidor externo y la pantalla del programa se congela, se queda fija (o en blanco) y el puntero del ratón cambia al reloj de arena indicando que el programa esta ocupado. Cuando termina el proceso de consulta, el programa vuelve a estar accesible y todo sigue normal.

Me gustaría establecer varios niveles de prioridades para intentar que la aplicación no se quede congelada mientras se realizan las consultas. ¿Teneis alguna idea? ¿Hay alguna forma de establecer prioridades de ejecución a las distintas funciones de los objetos?

Espero haberme explicado bien.
Muchas gracias de antemano.
Responder Con Cita
  #2  
Antiguo 20-11-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Puedes investigar sobre distintos "hilos" de ejecución. En Delphi un hilo parte de la clase "TThread", y, supongo que lo mismo en C++ Builder. O tal vez, simplemente, baste conque des algún respiro a la interfaz del programa. Esto puedes conseguirlo con el método "ProcessMessages" de "Application". Algo así:

Código Delphi [-]
begin
  while true do begin
    // Hago algo que va a paralizar la interfaz

    // Fuerzo el proceso de los mensajes de la aplicación
    Application.ProcessMessages();
  end;
end;
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #3  
Antiguo 23-11-2007
8051 8051 is offline
Registrado
 
Registrado: oct 2007
Ubicación: Bilbao - España
Posts: 7
Poder: 0
8051 Va por buen camino
Muchas gracias dec
Ya estoy echando algun ojo con más tiempo a los Threads muy interesante por el tema prioridades, que personalmente echaba en falta acostumbrado a la programación en micros de 8-16 bits

Un saludo
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
Aplicación de Servicio+Aplicación Normal +Socket jake API de Windows 5 21-06-2007 18:53:19
Aplicación Web vs aplicación Delphi epuigdef Internet 26 08-05-2007 10:47:12
Cómo cerrar otra aplicacion desde mi aplicacion en Delphi 7 Gaby123 API de Windows 5 04-01-2007 22:44:51
Diferencia entre aplicacion Clx y aplicación normal??? JorgeBec Varios 1 27-10-2004 17:30:49
aplicacion vertical? aplicacion horizontal? maruenda Varios 3 28-02-2004 23:23:20


La franja horaria es GMT +2. Ahora son las 23:51:25.


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