线程函数允许用户同时实现并发函数,这些函数可以相互依赖用于执行或独立。

示例

#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

 

以上就是在C/C++中的线程函数的详细内容。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。