[gdal-dev] Multithreading, deadlock with proj.4

Even Rouault even.rouault at mines-paris.org
Thu Feb 9 08:56:10 EST 2012

Selon Roger Phillips <heidegg at hotmail.com>:

You didn't mention which OS you are using, but if it is Windows, I believe you
are running into this proj4 bug : http://trac.osgeo.org/proj/ticket/63

It is now fixed, but no 4.7.1 or 4.8.0 release has been made since the fix has
been applied, so you have to patch it manually for now (or downgrade to a
previous proj release).

> Hello folks,
> I recently tried to use the GDAL 1.9.0 API from multiple threads. However,
> they may arise a deadlock situation
> where one thread hangs in the cpl_multithread.cpp CPLAcquireMutex function
> and others hang in the pj_acquire_lock() function of the proj.4 4.7.0 API
> blocking each other.
> The methods that set the locks seem to be the
> int         Initialize( OGRSpatialReference *poSource,
>                             OGRSpatialReference *poTarget );
>     virtual int TransformEx( int nCount,
>                              double *x, double *y, double *z = NULL,
>                              int *panSuccess = NULL );
> methods of ogrct.cpp.
> Not using the methods prevents a deadlock.
> Do you know about this?
> Thanks for your attention!

More information about the gdal-dev mailing list