
Hi Anthony, On Thu, Mar 13, 2008 at 9:22 PM, Anthony Williams <anthony_w.geo@yahoo.com> wrote:
Dean Michael Berris <dmberris <at> friendster.com> writes:
On Thu, Mar 13, 2008 at 6:04 PM, Anthony Williams <anthony_w.geo <at> yahoo.com> wrote:
Dean Michael C. Berris <dmberris <at> friendster.com> writes:
This has been bothering me a while -- as I'm working on the Memcache++ Client that I'm maintaining and continuing to develop, when I try running the unit test(s) I've written in a specific platform I get 'mutex: Invalid argument' errors being thrown with regards to either locking, unlocking, or destroying mutexes.
What does your code look like?
You can browse the source for the Memcache++ Client here: http://memcachepp.svn.sourceforge.net/viewvc/memcachepp/trunk/memcache%2B%2B...
Thanks. Is the test code available online too? Where does the "mutex: Invalid argument" message come from? This isn't a message from boost.threads.
http://memcachepp.svn.sourceforge.net/viewvc/memcachepp/trunk/test/memcache_... is the test which throws on destroying memcache handles, and related to locking mutexes. This also uses ASIO underneath, and I'm not sure if it may be ASIO related. For one thing, it throws a boost::system::system_error which encapsulates the 'mutex: Invalid argument' in the 'what()' method. I checked Boost.Thread and it throws system errors like ASIO does -- so right now I'm limiting it to just Boost.Thread because it seems to be the more logical place from which mutex errors would come from. Thanks for looking into this, and I hope this helps. -- Dean Michael C. Berris Software Engineer, Friendster, Inc. [http://blog.cplusplus-soup.com] [mikhailberis@gmail.com] [+63 928 7291459] [+1 408 4049523]