Ok, here's what I did, and it worked:
Code:
include <pthread.h>
void *func1(void *n)
{
int *a = (int *) n;
printf("hello: %i\n", *a);
return NULL;
}
void *func2(void *r)
{
int *b = (int *) r;
printf("hello again: %i\n", *b);
return NULL;
}
void make_thread(pthread_t *thread, void* (*func)(void *), int *value)
{
pthread_create(thread, NULL, func, value);
}
int main()
{
int *retval, i = 34, j = 89;
pthread_t thread1, thread2;
make_thread(&thread1, &func1, &i);
make_thread(&thread2, &func2, &j);
pthread_join(thread1, (void **) &retval);
pthread_join(thread2, (void **) &retval);
return 0;
}
Thanks.