Advertisement

三阶段实现多线程

阅读量:

阅读了一篇关于C多线程的好文后,我决定掌握这一新技能,并将自己学到的心得整理下来。然后一起交流分享。

在C语言中开发多线程时最简便的方式是采用Pthreads库该库使得线程间能够共享内存以及源代码因此对于被定义在函数中的变量不会进行跨线程共享这将简化多线 thread 的实现过程以下将开始学习Pthreads的快速入门指南

第一步:声明和定义

  • 首先在文件头包含Pthreads库:
复制代码
    #include<pthread.h>

请指定指向这些线程的变元,并将其数据类型设为 pthread_t 。如果需要定义多个这样的变元,则可以选择使用数组或指针来实现;请注意,在采用指针的情况下必须预先对相应的内存空间进行分配。

复制代码
     pthread_t thread0

为实现多线程功能而定义的函数。该函数用于接收来自不同线程的数据,并同时拥有一个用于存储共享数据的指针变量。在本实现中假定该函数名为my_entry_function,并接受一个名为param的指针作为输入参数。

第二步:创建线程并合并

在定义完成后,在共享内存空间中使用pthread_create函数调用一个内部静态线程变量引用体,并创建一个属性(我们通常使用NULL)结构体用于后续操作;接着将要运行的线程目标函数及其所需参数作为参数传递给该函数

全部评论 (0)

还没有任何评论哟~