ในบทช่วยสอนนี้ เราจะพูดถึงโปรแกรมเพื่อทำความเข้าใจฟังก์ชันของเธรดใน C/C++
ฟังก์ชันเธรดช่วยให้ผู้ใช้สามารถใช้งานฟังก์ชันพร้อมกันได้ในเวลาเดียวกัน ซึ่งสามารถพึ่งพาซึ่งกันและกันสำหรับการดำเนินการหรือแยกจากกัน
ตัวอย่าง
#include <pthread.h> #include <stdio.h> #include <stdlib.h> void* func(void* arg){ //detaching the current thread pthread_detach(pthread_self()); printf("Inside the thread\n"); pthread_exit(NULL); } void fun(){ pthread_t ptid; //creating a new thread pthread_create(&ptid, NULL, &func, NULL); printf("This line may be printed before thread terminates\n"); if(pthread_equal(ptid, pthread_self()) printf("Threads are equal\n"); else printf("Threads are not equal\n"); //waiting for the created thread to terminate pthread_join(ptid, NULL); printf("This line will be printed" " after thread ends\n"); pthread_exit(NULL); } int main(){ fun(); return 0; }
ผลลัพธ์
This line may be printed before thread terminates Threads are not equal Inside the thread This line will be printed after thread ends