[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