Nov 27, 2024
#include <pthread.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
void* myThreadFun(void* vargp) {
sleep(1);
printf("Printing GeeksQuiz from Thread \n");
return NULL;
}
int main() {
pthread_t thread_id;
printf("Before Thread\n");
pthread_create(&thread_id, NULL, myThreadFun, NULL);
pthread_join(thread_id, NULL);
printf("After Thread\n");
exit(0);
}
pthread_create: Creates a new thread.
pthread_join: Waits for the thread to terminate.gcc multithread.c -lpthread
./a.out
#include <pthread.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <unistd.h>
int g = 0;
void* myThreadFun(void* vargp) {
int myid = getpid();
static int s = 0;
++s;
++g;
printf("Thread ID: %d, Static: %d, Global: %d\n", myid, ++s, ++g);
}
int main() {
int i;
pthread_t tid;
for (i = 0; i < 3; i++)
pthread_create(&tid, NULL, myThreadFun, NULL);
pthread_exit(NULL);
return 0;
}