[gdal-dev] Multithreading with OGR
Martin Dobias
wonder.sk at gmail.com
Thu Jun 24 05:02:42 EDT 2010
Hi Frank
On Wed, Jun 23, 2010 at 4:58 PM, Frank Warmerdam <warmerdam at pobox.com> wrote:
> Martin,
>
> Generally speaking it is not safe to have multiple threads making calls
> into a single OGRLayer at the same time. At the very least you will
> encounter the "messing up" effect on GetNextFeature(), even if you
> serialize calls, and if you don't serialize the calls to the OGRLayer
> you will also face potentially severe problems and crashes.
>
> With regard to RFC 16, only a little work in the existing code with
> locks was implemented. None of the TestCapability or GetLayerClone()
> work was done. I still think that the approach in the RFC is reasonable
> but I don't currently have funding to pursue the matter. There was
> also some pushback at the time though I don't recall all the details.
My intent is to use two OGRLayer instances of the same layer: one
instance for handling various stuff in main thread, the other one in
worker thread for rendering. Can I expect the GetNextFeature calls to
be reentrant, i.e. can they be called from both threads simultaneously
using different instances of layers?
Regards
Martin
More information about the gdal-dev
mailing list