🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.lenguajes.c++
Article #15

RE: Problemon con Builder y Access

#15
From: salvador
Date: Wed, 08 Nov 2000 00:00
70 lines
3811 bytes
Gracias por la respuesta, lo probar� cuanto antes lo de adquire y release
(aunque me temo que, efectivamente, unos llaman a los otros, no se si me van
a resolver el problema). En cuanto a la pregunta, tanto el TDatabase como el
TQuery son propiedades de la clase que me he creado, que al final es la
clase que utilizar�n los threads para acceder a la BD, vamos que los
componentes de la BD no est�n en ning�n form.

Sin embargo, para el form principal s� tengo unos componentes bd, pero en
principio s�lo los utilizo para inicializar ciertos datos al principio del
programa, y adem�s he comprobado que s�lo accedo a trav�s de la secci�n
cr�tica. Podr�a resultar esto alg�n problema?

> yo siempre he utilizado acquire antes de entrar en una seccion critica
> y release cuando la dejas, y siempre me ha funcionado, aunque la ayuda
dice
> que enter y leave hacen lo mismo, prueba a cambiarlos por adquire y
release.
>
> una pregunta, el componente bd esta en un form ? o pertenece al thread ?
>
> y tambien debes poner
> try
>    CriticalSection.adquire
>  /// codigo
> Finally
>   CriticalSection.release
> end;
>
> Tal vez es lo que te esta pasando, has de asegurarte que la secci�n
critica
> se libera.
>
>
>
> salvador <sfonten@jazzfree.com> escribi� en el mensaje de noticias
> IJDN5.5$T9.131110@news.jazztel.es...
> > A ver si alguien me puede echar una mano (me estoy desesperando):
> >
> > Estoy con un programa muti-thread en Builder que cada tread tiene que
> > acceder a la Base de Datos en Access. Como los componentes de acceso a
la
> BD
> > no son "thread safe" (al menos si la BD es Access), se supone que solo
> puede
> > haber un thread a la vez utilizando los compontes de BD.
> >
> > He creado una clase paara que cada acceso a la BD de cada thread entre
por
> > una secci�n cr�tica (TCriticalSection) com�n a todos los threads. Seg�n
> > creo, esto se supone que deber�a de funcionar, no? pues revienta la
> > aplicaci�n, normalmente al consultar el valor RecordCount (siempre a
> trav�s
> > de la secci�n cr�tica).
> >
> > Mosqueado por esto me he echo una aplicaci�n de prueba con 4 threads que
> > acceden simult�neamente a una consulta prefijada y la muestran por
> pantalla,
> > pero accediendo a los componentes de BD a trav�s de un procedure con la
> > llamada 'Synchronice'. Esto s� funciona.
> >
> > Repet� esta �ltima aplicaci�n haciendo lo mismo, pero en vez del
> > 'Synchronice', con una variable TCriticalSection ... y fall�, esta vez
no
> > daba un fallo de memoria, si no un thread, pasado un tiempo, entraba en
la
> > secci�n cr�tica entraba y no sal�a (y ten�a siempre un Enter/Leave de la
> > secci�n cr�tica.).
> >
> > Algui�n sabe que est� pasando????????, se me est�n agotando las ideas.
> >
Technical Details
Message-ID: <7xkO5.78$T9.458849@news.jazztel.es>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <IJDN5.5$T9.131110@news.jazztel.es> <NKUN5.5513$Jn2.140914@telenews.teleline.es>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: 111a5a,1bd1163b8806c0fa
X-Google-Attributes: gid111a5a,public
X-Google-Thread: f53ec,1bd1163b8806c0fa
X-Google-Attributes: gidf53ec,public
X-Google-Thread: 109585,1bd1163b8806c0fa
X-Google-Attributes: gid109585,public
From: "salvador" <noimporta@jazzfree.com>
Subject: RE: Problemon con Builder y Access
Date: 2000/11/08
Message-ID: <7xkO5.78$T9.458849@news.jazztel.es>
X-Deja-AN: 691386687
References: <IJDN5.5$T9.131110@news.jazztel.es> <NKUN5.5513$Jn2.140914@telenews.teleline.es>
X-Priority: 3
X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300
X-Complaints-To: newsmaster@jazztel.com
X-Trace: news.jazztel.es 973722819 212.106.237.19 (Wed, 08 Nov 2000 23:33:39 CET)
Organization: Jazztel
X-MSMail-Priority: Normal
NNTP-Posting-Date: Wed, 08 Nov 2000 23:33:39 CET
Newsgroups: es.comp.lenguajes.c++,es.comp.bd.ms-access,es.comp.lenguajes.delphi