Answers

Question and Answer:

  Home  Linux Debugging

⟩ 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]#

 146 views

More Questions for you: