On Thu, 13 Feb 2014, marti.ma...@littlecms.com wrote: > > 1) Any client using THR functions and the lib as shared object > is basically broken. if a client sets a listener or plug-in, > it got events from any other clients of the .so, with > obviously unexpected user data format. This causes segfaults.
These descriptions of static vs shared libraries don't make any sense to me. On the planet I live on, programs using a shared library always get private data and there is no sharing of data between programs due to using a shared library. There are platforms (e.g. Microsoft Windows) which support DLLs which are really multi-threaded servers (shared memory space) under the guise of a library but these are not normal DLLs and need to be registered with the OS as a sort of server. I do appreciate the concern about applications which use a thread-specific memory allocator (as Ghostscript is apparently doing) since then it would then be wrong to for a thread to deallocate a pointer allocated by a different thread. All standard memory allocators (i.e. malloc()/free()) assure that memory is deallocated to the pool that it came from but of course this requires locking in multithreaded programs. A program can have several lcms transforms going on at once (managed by different threads), each of which has an associated team of worker threads to speed-up the transform. This is the expectation in my own software. Regardless, this change seems rather large and removes a central premise of lcms2 which was previously advertised to be used. I will have to study my code to see how to continue supporting lcms1, lcms2, and now lcms2-2.6+. There are still many systems in active use which have only lcms1. I strongly recommend against releasing this new version of the library until it is proven that existing software can be successfully adapted to it. Bob -- Bob Friesenhahn bfrie...@simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/ GraphicsMagick Maintainer, http://www.GraphicsMagick.org/ ------------------------------------------------------------------------------ Android apps run on BlackBerry 10 Introducing the new BlackBerry 10.2.1 Runtime for Android apps. Now with support for Jelly Bean, Bluetooth, Mapview and more. Get your Android app in front of a whole new audience. Start now. http://pubads.g.doubleclick.net/gampad/clk?id=124407151&iu=/4140/ostg.clktrk _______________________________________________ Lcms-user mailing list Lcms-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lcms-user