[odb-users] Mutex may not be released Re: It was blocked by odb::sqlite::connection_pool_factory::create()

Boris Kolpackov boris at codesynthesis.com
Mon Jul 29 09:21:19 EDT 2024


Sunny Sun <sunny.sun at ringcentral.com> writes:

> I downloaded the source code here: https://git.codesynthesis.com/cgit/odb/odb/   and tried to understand:
>
> > In 2.5.0 we have switched to C++11 threading API so maybe that will help.
> 
> But from the code I didn’t find out the exact change. What apis/interfaces
> does odb switched?

The Win32-based support is still in 2.5.0 and is unchanged (it will be
dropped in 2.6.0 once we drop support for C++98/03). But by default in
2.5.0 we don't use it, instead using the C++11 threading support. This
is controlled with the ODB_THREADS_* macros, for example:

https://git.codesynthesis.com/cgit/odb/libodb/tree/odb/details/mutex.hxx


> Could you help analyze it?

I will again suggest that you try 2.5.0 and see if that makes a
difference.



More information about the odb-users mailing list