Linux并行计算多线程入门程序(POSIX线程并行)

Posted 各可

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux并行计算多线程入门程序(POSIX线程并行)相关的知识,希望对你有一定的参考价值。

Linux并行计算多线程

#include"stdio.h"
#include"stdlib.h"
#include<pthread.h>
#define NUM_THREADS 4
long int thread_count;
void * Hello(void * rank);
int main(int argc, char *argv[])
{
    long int thread;
    pthread_t * thread_handles;
    thread_count = NUM_THREADS;
    thread_handles = (pthread_t *)malloc(thread_count * sizeof(pthread_t));
    for(thread=0;thread<thread_count;thread++)
        pthread_create(&thread_handles[thread],NULL,Hello,(void *)thread);
    printf("Hello from the main thread\\n");
    for (thread = 0;thread<thread_count;thread++)
        pthread_join(thread_handles[thread], NULL);
    free(thread_handles);
    return 0;
}
void * Hello(void * rank)
{
    long int my_rank=(long int)rank;
    printf("Hello from thread %ld of %ld\\n",my_rank,thread_count);
    return NULL;
}
// gcc thread.c -o thread -lpthread
// ./pthread

在Linux系统中端该.c文件所在文件夹下打开终端,输入以下命令进行编译运行:
在这里插入图片描述
运行结果如下:
在这里插入图片描述

以上是关于Linux并行计算多线程入门程序(POSIX线程并行)的主要内容,如果未能解决你的问题,请参考以下文章

OS之进程管理---多线程模型和线程库(POSIX PTread)

Linux C与C++一线开发实践之六 多线程高级编程

Linux C与C++一线开发实践之六 多线程高级编程

Linux入门及企业服务器知识学习笔记

多线程基本概念(并发与并行线程与进程)和入门案例

POSIX 多线程编程及理解