]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Added more comments.
authorBart Van Assche <bvanassche@acm.org>
Tue, 9 Sep 2008 18:18:26 +0000 (18:18 +0000)
committerBart Van Assche <bvanassche@acm.org>
Tue, 9 Sep 2008 18:18:26 +0000 (18:18 +0000)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8594

drd/tests/pth_inconsistent_cond_wait.c

index 2a1e71924e64520e00d0cf45b669b0bd2519e365..06c476b0ecd827366fee5fe8ff179ae502a01eb3 100644 (file)
@@ -37,21 +37,33 @@ int main(int argc, char** argv)
   pthread_t tid1;
   pthread_t tid2;
 
+  /* Initialize synchronization objects. */
   sem_init(&s_sem, 0, 0);
   pthread_cond_init(&s_cond, 0);
   pthread_mutex_init(&s_mutex1, 0);
   pthread_mutex_init(&s_mutex2, 0);
+
+  /* Create two threads. */
   pthread_create(&tid1, 0, &thread1, 0);
   pthread_create(&tid2, 0, &thread2, 0);
+
+  /* Wait until both threads have called sem_post(). */
   sem_wait(&s_sem);
   sem_wait(&s_sem);
+
+  /* Wait until both threads are waiting inside pthread_cond_wait(). */
   pthread_mutex_lock(&s_mutex1);
   pthread_mutex_lock(&s_mutex2);
   pthread_mutex_unlock(&s_mutex2);
   pthread_mutex_unlock(&s_mutex1);
+
+  /* Signal s_cond twice. */
   pthread_cond_signal(&s_cond);
   pthread_cond_signal(&s_cond);
+
+  /* Join both threads. */
   pthread_join(tid1, 0);
   pthread_join(tid2, 0);
+
   return 0;
 }