博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux 进程与线程的同步与互斥
阅读量:7063 次
发布时间:2019-06-28

本文共 461 字,大约阅读时间需要 1 分钟。

进程之间的通信和同步方式:

1.管道(pipe)( 分为有名管道[父子间的进程],无名管道FIFO[无关进程](服务器与客户端进程,在同一台机器上))

2.消息队列 (mq, 可以使用共享内存实现) 

3.信号量 ( semaphore) (如linux的PV操作sem_post, sem_wait)

4.共享内存(mmap, munmap如linux的shmget, shmdt)

5.网络套接字(Unix域套接字,sockpair)

 

线程间的同步方法:

1.互斥锁 (pthread_mutex_lock)

2.条件变量(pthread_cond_wait,pthread_cond_sigal, pthread_cond_broadcast)

3.读写锁 (pthread_rwlock_rdlock,pthread_rwlock_wrlock)

4.记录上锁(fcntl)

4.信号量(semaphore)

进程与线程的区别: 进程:独立的地址空间 、可运行多线程            线程:独立的堆栈、程序计数器、共享进程所有的资源

转载地址:http://pznll.baihongyu.com/

你可能感兴趣的文章
Oracle Apps AutoConfig
查看>>
[leetcode]Flatten Binary Tree to Linked List
查看>>
css颜色代码大全:(网页设计师和平面设计师常用)
查看>>
boost 1.52在windows下的配置
查看>>
素材锦囊——50个高质量的 PSD 素材免费下载《上篇》
查看>>
【转】oc中消息传递机制-附:对performSelector方法的扩充
查看>>
oracle的nvl和sql server的isnull
查看>>
[转]虚拟机下Ubuntu共享主机文件(Ubuntu、VMware、共享)
查看>>
高血压 治疗 偏方
查看>>
HtmlAttribute HTML属性处理类
查看>>
[书目20130316]jQuery UI开发指南
查看>>
Sql Server系列:开发存储过程
查看>>
Find INTCOL#=1001 in col_usage$?
查看>>
AutoCAD 命令统计魔幻球的实现过程--(3)
查看>>
dp学习笔记1
查看>>
newlisp debugger
查看>>
Java进阶02 异常处理
查看>>
图文介绍openLDAP在windows上的安装配置
查看>>
Heritrix 3.1.0 源码解析(十二)
查看>>
java 动态代理
查看>>