#include <stdio.h> #include <stdint.h> #include <pthread.h> #include "dlopen_lib.h" void *PrintHello(void *threadid) { const long tid = (uintptr_t)threadid; printf("Hello World! It's me, thread #%ld!\n", tid); pthread_exit(NULL); } void foo() { pthread_t thread; int rc; uintptr_t t = 1; printf("In main: creating thread %ld\n", t); rc = pthread_create(&thread, NULL, PrintHello, (void *)t); if (rc) printf("ERROR; return code from pthread_create() is %d\n", rc); else pthread_join(thread, NULL); }