bug-commoncpp
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bugs/requests regarding Conditional and recursive Mutexes


From: Doug DeCarlo
Subject: bugs/requests regarding Conditional and recursive Mutexes
Date: Fri, 10 Aug 2001 15:31:33 -0400 (EDT)

The following message regards bugs and requests for Common C++ 1.5.0:

(I am using an Sun Ultra 10 running Solaris 2.8; gcc 2.95.2 was used
to compile the library and my code that used it.)

[Request]
  When using your code to support recursive mutexes (if not supported
  by the OS), your implementation of Conditional::Wait() does not take
  this into account - it seems you simply forgot to put it in.

  I have been having problems where the Wait() call returns from
  waiting without bothering to properly reacquire the mutex.

[Missing from API]
  Conditional seems to be missing in the win32 version.

[Feature request]
  Conditional should allow the specification of a mutex, and shouldn't
  necessarily be a subclass of Mutex with wait() and signal() added in.
  It's very useful to have this ability, for instance, when implementing
  a barrier, where you need something like;

   pthread_cond_wait(&cond1, &mutex);
  ...
   pthread_cond_wait(&cond2, &mutex);

----------------------------------------------------

The following aren't your bugs, but you should know about them:

- Recursive mutexes don't work right on Solaris 2.x -- they deadlock in
  some situations. Regular mutexes work fine, though.

  Just so you know, the way I got around this bug (and your bug above) is
  that I am now defining the following:

  #define PTHREAD_MUTEXTYPE_RECURSIVE PTHREAD_MUTEX_DEFAULT

  While I don't have any sort of recursive mutex support, I won't be
  using it.

- The use of "cl" for some windows thing in the configure script runs
  common lisp on my Solaris machine, which causes configure to hang,
  as cl is just sitting at a prompt.

If you have any further questions about this, please ask.

And if you have any idea when/if 2.0 is coming out, I'd like to know.

Thanks!

- Doug DeCarlo
  address@hidden




reply via email to

[Prev in Thread] Current Thread [Next in Thread]