Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

 
 
Herramientas Buscar en Tema Desplegado
  #11  
Antiguo 30-07-2007
[fer21unmsm] fer21unmsm is offline
Miembro Premium
 
Registrado: dic 2005
Ubicación: Lima
Posts: 627
Poder: 21
fer21unmsm Va por buen camino
Cita:
Empezado por jake
Bueno, nunca he usado lo que me sugieresalguna idea??, efectivamente pueden entrar al mismo tiempo 2 o más archivos .zip .
Saludos
Lo que te sugiero es que a los procesos criticos, donde accedes a la base de datos para insertar, etc u otros recursos criticos le pongas TCriticalSection

Por ejemplo: el SCritical: TCriticalSection lo declare en una librería general

Código Delphi [-]
function evt_set_cfgfcont(idconx:longint; paramointer):integer;cdecl;
var
  ptr: ^SMSG_CFGFILCONT;
  arch: THandle;
  tam: ^integer;
begin
{establece los valores para Filtro de Contenido}
  detenerhilo(MSG_GET_CFG_FCONT_GRAL);
  SCritical.Acquire;
try
  frmprincipal.lblParamEstado.Font.Color := RGB(0,0,128);
  frmprincipal.lblParamEstado.Text := 'Obteniendo Filtro de Contenido...';
 try
  ptr := @param;
  tam:=@ptr^[1];
  with frmconfigurar do
  begin
    if ptr^[0]=1 then ckgfiltro.Checked:=true
    else ckgfiltro.Checked:=false;
    arch:=filecreate(applicationpath+'\filtro.conf');
    FileWrite(arch,ptr^[5],tam^);
    FileClose(arch);
  end;
  Screen.Cursor:=crdefault;
  TThreadLista.create(6);
 except
   frmprincipal.lblParamEstado.Font.Color := RGB(255,0,0);
   frmprincipal.lblParamEstado.text:='Error al recibir datos del sevidor';
   SCritical.Release;
 end;
finally
  evt_set_cfgfcont := 0;
  SCritical.Release;
end;
end;

En este ejemplo evito que dos clientes o dos procesos intenten acceder al archivo "filtro.conf", porque si existen dos o más procesos que deseen acceder los pone en espera, como en una cola

Y al final lo libero para que pueda entrar otro proceso, de lo contrario si no se libera se cuelga

espero te sirva de algo

Saludos cordiales.
__________________
"La información tiene más valor cuando se comparte"
Responder Con Cita
 



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
Web Service CARSOFT_AR Internet 1 05-03-2007 08:03:02
Web Service madmai Internet 3 06-12-2006 21:01:45
Web Service CARSOFT_AR Internet 4 31-08-2006 17:34:05
!!!!Service application aram2r API de Windows 1 20-05-2004 13:09:06
Service y Application Service Ezecool Varios 0 30-09-2003 18:48:30


La franja horaria es GMT +2. Ahora son las 19:22:39.


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
Copyright 1996-2007 Club Delphi