Hi,
Without getting into details, I wonder, has anyone ever used GDAL with
libecwj2 support to access ECW dataset(s) from multiple readers?
Apparently, libecwj2 manages some internal static environment which
can not be safely shared, unless all accesses to libecwj2 are serialised.
For example, in CNCSJP2FileViewVector class there is
static CNCSJP2FileViewVector sm_Views;
and the way it is used, may lead to subtle problems
and destruction fiasco related to multiple threads
managed by this static object.
Possible simple solution is to replace this static object
with one allocated from dynamic storage.
But, it seems it does not solve all possible. problems
and may fail if libecwj2 is accessed (through GDAL)
from multiple threads.
One leak of problem is crash during shutdown stages in libecwj2.
Does anyone know any piece of documentation where relevant
limitations and assumptions of libecwj2 are described,
either internal docs in GDAL or external resources.
Any related brainstorming would be greatly appreciated.
Best regards,
--
Mateusz Loskot, http://mateusz.loskot.net
___
gdal-dev mailing list
gdal-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/gdal-dev