There are no limits on the number of mutexes and condition variables (condvars).
There's no limit on the number of unnamed semaphores, but the number of named semaphores is limited by the number of available file descriptors (see File descriptors, above).