[PATCH] D28226: threading_support: introduce __libcpp_recursive_mutex_t

David Majnemer via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Jan 3 13:29:07 PST 2017


majnemer added a comment.

In https://reviews.llvm.org/D28226#634282, @compnerd wrote:

> The dynamic behavior only is used for Windows, not pthreads.  So, we dont see it here, but it becomes apparent in the windows support.  I was trying to minimize the changes to libc++ itself to avoid having it to consider the recursive vs non-recursive cases.  If the libc++ maintainers would prefer to expand the interfaces rather than use the dynamic behavior, Im fine with that approach too.


Another argument that I forgot to mention: `__libcpp_condvar_wait` and `__libcpp_condvar_timedwait` are only expected to work with non-recursive mutexes. I feel that this overwidens the API surface. Flattening it out removes the dynamic behavior and makes it clear what operations needs to support what types of mutexes.


Repository:
  rL LLVM

https://reviews.llvm.org/D28226





More information about the cfe-commits mailing list