Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   controlar acceso a un objeto desde diferentes threads (https://www.clubdelphi.com/foros/showthread.php?t=30029)

derteo 07-02-2006 13:16:20

controlar acceso a un objeto desde diferentes threads
 
Me gustaría saber si se puede hacer lo siguiente.
Tengo un objeto TQueue en el porgrama principal. Lanzo dos hilos desde el programa principal, uno de ellos añadirá objetos a la cola y el otro los sacará. Me gustaría controlar el acceso al objeto TQueue de tal manera que cuando uno de los hilos está usando la cola, el otro se quede a la espera de que la cola esté libre.

seoane 07-02-2006 18:42:01

Puedes usar TCriticalSection para esto.

Código:

uses SyncObjs;
  .
  .
  .

with TCriticalSection.Create do
    try
      Acquire;
        // Lo que pongas aqui se ejecutara solo, los demas thread se
        // detendran y esperan a que termine esta seccion para continuar
      Release;
    finally
      Free;
    end;


seoane 07-02-2006 19:16:36

Pensandolo mejor creo que bastaria con usar el metodo Synchronize del Thread. Son metodos similares, usa el que mas te guste.


La franja horaria es GMT +2. Ahora son las 21:14:02.

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