社区
Linux/Unix社区
帖子详情
** linux unix 下是否每个函数对多进程和多线程是“原子操作"? **
ioioio
2005-09-16 05:54:16
看《unix 环境高级编程》p45 关于 "原子操作"有下面的话:
"任何一个要求多于1个函数调用的操作都不能成为原子操作,因为在两个函数调用之间,内核有可能会临时挂起该进程(正如我们前面所假定的)。"
难道linux unix 下每个函数对多进程和多线程可以自动同步?
...全文
219
10
打赏
收藏
** linux unix 下是否每个函数对多进程和多线程是“原子操作"? **
看《unix 环境高级编程》p45 关于 "原子操作"有下面的话: "任何一个要求多于1个函数调用的操作都不能成为原子操作,因为在两个函数调用之间,内核有可能会临时挂起该进程(正如我们前面所假定的)。" 难道linux unix 下每个函数对多进程和多线程可以自动同步?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hundlom
2005-09-25
打赏
举报
回复
“inux unix 下每个函数都是原子”不全是
ioioio
2005-09-17
打赏
举报
回复
好,不说同步,是否linux unix 下每个函数都是原子的?这个“原子”到底什么意思?与多线程(进程)有什么关系?
darkstar21cn
2005-09-17
打赏
举报
回复
内核态函数是原子的,我们一般用都绝大部分都是用户态的。
hundlom
2005-09-17
打赏
举报
回复
同步一般是自己的设计思想,函数是已经设计好的,怎么会考虑到你现在的需求呢?
ioioio
2005-09-16
打赏
举报
回复
但函数在变成机器码序列后,被多个线程(进程)同时调用时,某个线程(进程)完全是可能在函数机器码执行的任何地方被切换,不知道这里说的“原子操作”是什么意思?
ioioio
2005-09-16
打赏
举报
回复
还是不太明白,我认为某个函数如果能原子操作那就一定可以线程(进程)同步,书上的例子也是讲多进程写一个文件的问题。
hundlom
2005-09-16
打赏
举报
回复
有一部分可再入函数,可以中断。
hundlom
2005-09-16
打赏
举报
回复
函数不对多进程和多线程可以自动同步
不一定是原子操作,
ioioio
2005-09-16
打赏
举报
回复
分不清楚,麻烦讲一下:
原子操作:
线程安全:
daemeon
2005-09-16
打赏
举报
回复
分得清原子操作和线程安全吗?
linux
实战视频课程
Linux
是一套免费使用和自由传播的类
Unix
操作系统,是一个基于POSIX和
UNIX
的多用户、多任务、支持
多线程
和多CPU的操作系统。它能运行主要的
UNIX
工具软件、应用程序和网络协议。它支持32位和64位硬件。
Linux
继承了
Unix
...
linux
中
多进程
、
多线程
编程常用
函数
总结
多进程
、
多线程
常用
函数
总结
多进程
创建进程进程间通讯管道信号量信号共享内存内存映射
多线程
线程的创建、等待、退出、清理线程同步互斥锁条件变量信号量自旋锁读写锁
多进程
创建进程 当使用
多进程
模式执行程序时,分叉之前需要创建一个进程 #include <unistd.h> //创建一个进程,返回该进程在程序中的编号 pid_t fork(void); //返回进程编号 pid_t getpid(void); 注意: 子进程和父进程共享代码段,但是会复制数据段 父进程中fork
函数
返回子进程的
linux
write
函数
为
原子操作
,
多进程
,
多线程
假如APPEND,写入不被打断
当一个文件被多个进程或者多个线程同时操作时,会不会出现内容交错的现象。例如一个进程向文件写入“AAAA” ,使用语句(write( fd, "AAAA", 4);),另一个进程向文件写入“BBBB”,语句为(write ( fd, "BBBB", 4);)。那么最终文件的内容会不会出现“AABBBBAA” 的情况呢?这就涉及到write
函数
是否
是
原子操作
的问题了。如果write
函数
是原子操...
有关
linux
下
多进程
与
多线程
的区别总结
谈谈dpdk应用层包处理程序的
多进程
和
多线程
模型选择时的若干考虑 看到知乎上有个关于
linux
多进程
、
多线程
的讨论:链接地址 自己项目里也对这个问题有过很多探讨和测试,所以正好开贴整理一下,题目有点长,其实就2点: 1.
多进程
模型和
多线程
模型,这两种模型在
linux
上有什么区别,各有何优缺点? 这里仅限于
linux
平台,因为
linux
平台跟win平台关于线程的
Linux
多进程
多线程
编程笔记
文章目录
多线程
多进程
学习记录一、
多线程
编程二、
多进程
编程1、共享内存
多线程
多进程
学习记录 一、
多线程
编程 二、
多进程
编程 1、共享内存 通常用信号量同步共享内存,也可以使用记录锁和互斥锁 ...
Linux/Unix社区
23,125
社区成员
74,509
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章