geos
geos copied to clipboard
Prepared geometry is not thread-safe
The current prepared geometry implementations are not thread safe. In https://github.com/dbaston/libgeos/commit/c19605529975875acab04948e0d9a4c6be27ab63 I updated the various lazy initialization methods of PreparedPolygon to use std::call_once. Running a multi-threaded test under valgrind --tool=helgrind shows problems in MCIndexSegmentSetMutualIntersector. There is a lot of state manipulation this class that would need to be removed, while remaining within (or updating) the SegmentSetMutualIntersector interface.
PR: #826