#include "unpthread.h"
void *
myfunc(void *ptr)
{
int val;
printf("thread ID of myfunc: %d\n", pthread_self());
val = *((int *) ptr);
printf("val = %d\n", val);
sleep(10);
val = *((int *) ptr);
printf("val = %d\n", val);
}
int
main(int argc, char **argv)
{
pthread_t tid;
int n, val;
printf("thread ID of main: %d\n", pthread_self());
/* Let's verify that the value pointed to the thread's argument is
modifiable */
val = 123;
if ( (n = pthread_create(&tid, NULL, myfunc, &val)) != 0)
errno = n, err_sys("pthread_create error");
sleep(5);
val = 789;
sleep(20);
exit(0);
}
syntax highlighted by Code2HTML, v. 0.9.1