⟩ What is the output of this program no 4? #include<stdio.h> #include<pthread.h> int a; void *fun_t(void *arg); void *fun_t(void *arg) { a = 20; pthread_exit("Bye"); } int main() { pthread_t pt; void *res_t; a = 10; if(pthread_create(&pt,NULL,fun_t,NULL) != 0) perror("pthread_create"); if(pthread_join(pt,&res_t) != 0) perror("pthread_join"); printf("%dn",a); return 0; } a) 10 b) 20 c) segmentation fault d) none of the mentioned
b) 20
Explanation:
In this program the value of variable "a" is changed by the thread "fun_t".
Output:
[root@localhost google]# gcc -o san san.c -lpthread
[root@localhost google]# ./san
20
[root@localhost google]#