#include #include #include #include void *thread_func(void *p) { sem_t *sem = p; char buf[100]; sem_wait(&sem[0]); snprintf(buf, sizeof buf, "/dev/null/noexist_%p", (void *)buf); dlopen(buf, RTLD_NOW|RTLD_LOCAL); sem_post(&sem[1]); } #define NT 30 int main() { sem_t sem[2]; int i; sem_init(&sem[0], 0, 0); sem_init(&sem[1], 0, 0); for (i=0; i