Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

Thread Functions ใน C/C++


ในบทช่วยสอนนี้ เราจะอภิปรายโปรแกรมเพื่อเข้าใจ thread functions ใน C/C++

Thread functions อนุญาตให้ผู้ใช้ implement concurrent functions พร้อมกัน ซึ่งอาจ dependent หรือ independent กัน

ตัวอย่าง

#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