summaryrefslogtreecommitdiff
path: root/tests/equal1.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/equal1.c')
-rw-r--r--tests/equal1.c39
1 files changed, 26 insertions, 13 deletions
diff --git a/tests/equal1.c b/tests/equal1.c
index e877990..d882adc 100644
--- a/tests/equal1.c
+++ b/tests/equal1.c
@@ -1,34 +1,47 @@
+/*
+ * Test for pthread_equal.
+ *
+ * Depends on functions: pthread_create().
+ */
+
#include <pthread.h>
#include <stdio.h>
#include <windows.h>
void * func(void * arg)
{
- printf("Hello world %d\n", (int) arg);
Sleep(2000);
- return arg;
+ return 0;
}
main()
{
int rc;
pthread_t t1, t2;
- rc = pthread_create(&t1, NULL, func, (void *) 1);
- rc = pthread_create(&t2, NULL, func, (void *) 2);
+ if (pthread_create(&t1, NULL, func, (void *) 1) != 0)
+ {
+ return 1;
+ }
+
+ if (pthread_create(&t2, NULL, func, (void *) 2) != 0)
+ {
+ return 1;
+ }
- puts("testing t1 and t2: ");
if (pthread_equal(t1, t2))
- printf("equal\n");
- else
- printf("not equal\n");
+ {
+ return 1;
+ }
- puts("testing t1 on itself: ");
- if (pthread_equal(t1,t1))
- printf("equal\n");
- else
- printf("not equal\n");
+ if (pthread_equal(t1,t1) == 0)
+ {
+ return 1;
+ }
+ /* This is a hack. We don't want to rely on pthread_join
+ yet if we can help it. */
Sleep(8000);
+ /* Success. */
return 0;
}