[Gdal-dev] multithread problem with hfa
Stephane Routelous
route at cae.com
Thu Apr 7 10:24:58 EDT 2005
ouch !
thank you for the answer
Stephane
-----Original Message-----
From: Frank Warmerdam [mailto:fwarmerdam at gmail.com]
Sent: Thursday, April 07, 2005 10:19 AM
To: Stephane Routelous
Cc: gdal-dev at remotesensing.org
Subject: Re: [Gdal-dev] multithread problem with hfa
On Apr 7, 2005 9:53 AM, Stephane Routelous <route at cae.com> wrote:
> Hi,
>
> we have a crash on windows (using gdal 1.2.5) with a multithread
application
> reading 2 different IMG files in 2 different threads.
> Is gdal thread safe ?
Stephane,
GDAL is *not* thread safe. You will need to protect pretty much all
GDAL access with a BigLock(tm).
There are some relatively minor race conditions in the way error
messages are stored (one global error context). Also a variety of
string management functions use static globals that are not
thread local. But the biggest issue by far is that GDAL uses a
single global raster block cache. That means that in a multithreaded
application, working on two distinct GDALDatasets you can end up
with one thread expiring and freeing a cache block still in use by
another thread.
I am interested in making GDAL threadsafe but it is a fairly substantial
effort and I can't say when I might get around to it. However, it should
be relatively easy to correct the block caching issues.
Best regards,
--
---------------------------------------+------------------------------------
--
I set the clouds in motion - turn up | Frank Warmerdam,
warmerdam at pobox.com
light and sound - activate the windows | http://pobox.com/~warmerdam
and watch the world go round - Rush | Geospatial Programmer for Rent
More information about the Gdal-dev
mailing list