Linux多线程
文章平均质量分 72
Unknown To Known
这个作者很懒,什么都没留下…
展开
-
Linux多线程C++版(九) 线程同步和互斥-----线程信号量
【代码】Linux多线程C++版(九) 线程同步和互斥-----线程信号量。1.基本概念2.信号量创建和销毁3.信号量加和减操作4.代码理解信号量5.信号量实例银行账户取款----实现互斥6.信号量实例计算和取结果----实现线程同步原创 2022-12-08 19:42:21 · 1054 阅读 · 2 评论 -
Linux多线程C++版(八) 线程同步方式-----条件变量
1.条件变量基本概念- 互斥锁的缺点是它只有两种状态:锁定和非锁定- 条件变量通过允许线程阻塞和等待另一个线程发送信号的方法弥补了互斥锁的不足- 条件变量内部是一个等待队列,放置等待线程,线程在条件变量上等待和通知,互斥锁用来保护等待队列(对等待队列上锁),条件变量通常和互斥锁一起使用。- 条件变量允许线程等待特定条件发生,当条件不满足时,线程通常先进入阻塞状态,等待条件发生变化。一旦其他的某个线程改变了条件,可唤醒一个或多个阻塞的线程- 具体的判断条件还需要用户给出- 条件变量数据类型 pt原创 2022-12-02 23:06:31 · 784 阅读 · 0 评论 -
Linux多线程C++版(七) 线程互斥方式-----读写锁
1.读写锁基本概念2.读写锁创建和销毁3.读写锁的加锁和解锁4.代码了解读写锁5.线程互斥案例---ATM取钱--使用读写锁 先读后写,读锁成功加上,加写锁堵塞,要等读锁释放。总结特性:读和读互不影响,读和写相互排斥,写和写相互排斥。 都是写锁,第一个写锁加上,第二次写锁失败。 先写后读,写锁成功加上,加读锁失败。 都是读锁,是都成功的。原创 2022-11-30 20:28:46 · 1163 阅读 · 0 评论 -
Linux多线程C++版(六) 线程同步和线程互斥
1.线程同步和线程互斥2.线程互斥案例---ATM取钱--没有使用互斥锁3.线程互斥----互斥锁(互斥量)4.互斥锁创建和销毁5.互斥锁上锁和解锁6.线程互斥案例---ATM取钱--使用互斥锁7.互斥锁属性创建和销毁8.互斥锁属性之一---进程共享属性操作9.互斥锁属性之一----互斥锁类型操作10.代码了解互斥锁属性原创 2022-11-26 11:22:54 · 789 阅读 · 0 评论 -
Linux多线程C++版(五) 线程初始化和销毁 pthread_attr_t attr结构定义 pthread_attr_init()函数 pthread_arrt_destroy()函数
【代码】Linux多线程C++版(四) 线程初始化和销毁 pthread_attr_t attr结构定义 pthread_attr_init()函数 pthread_arrt_destroy()函数。原创 2022-11-23 21:16:30 · 930 阅读 · 0 评论 -
Linux多线程C++版(四) 线程清理和控制 pthread_cleanup_push()函数 pthread_cleanup_pop()函数 线程和进程的启动和终止比较
【代码】Linux多线程C++版(四) 线程清理和控制 pthread_cleanup_push()函数 pthread_cleanup_pop()函数 线程和进程的启动和终止比较。原创 2022-11-21 17:44:26 · 436 阅读 · 0 评论 -
Linux多线程C++版(三) 线程终止 pthread_cancel()函数 pthread_exit()函数 pthread_join()函数
由于一个进程中的多个线程共享数据段,因此通常在线程退出后,退出线程所占用的资源并不会随线程结束而释放。如果想要立即释放就必须在主控线程中使用pthread_join函数来等待线程结束,这样线程才会释放干净。pthread_join是主控线程调用的,表示自己会阻塞,直到rabbit线程结束 主控线程方可运行。retval:线程创建时,需要运行函数,pthread_exit 的参数就为这个函数的返回值,可由其他函数和pthread_join来检测获取。作用:谁调用谁阻塞,直到第一个参数的线程执行完毕。原创 2022-11-18 20:50:08 · 1192 阅读 · 0 评论 -
Linux多线程C++版(二) 线程创建 pthread_create()函数
如:int i或者指针 r都是每个线程自己数据不会相互影响,但是如果是。默认情况下不能保存新线程和调用线程的执行顺序,但是可以人工干预。新创建线程从start_rtn函数的地址开始运行。原创 2022-11-16 19:56:54 · 1779 阅读 · 0 评论 -
Linux多线程C++版(一) 线程基础 进程和线程关系 线程分类 Linux线程实现 线程表示
线程和进程的关系:线程是属于进程的,线程运行在进程空间内,同时进程所产生的线程共享同一用户内存空间,并当进程退出时该进程所产生的线程都会被强制退出并清除。一个进程至少需要一个线程作为它的指令执行体(一般也称为主线程),进程管理着资源(比如CPU,内存,文件等等),并把线程分配到某个CPU上执行。一般一个进程在最开始的时候是有一个线程,这个线程称为主控线程(主线程),同时可以通过主线程去创建多个线程,这种线程称为子线程。原创 2022-11-15 21:00:55 · 559 阅读 · 0 评论