操作系统 并发执行
程序员文章站
2022-05-05 09:57:55
...
两个等价线程并发的执行下列程序,a为全局变量,初始为0,假设printf、++、--操作都是原子性的,求所有可能输出
void foo() {
if(a <= 0) {
a++;
}
else {
a--;
}
printf("%d", a);
}
——输出 1 0
——输出 1 2
——输出2 2
由此可见并发操作中 对共享数据的读写可能出现多种结果,所以必要时要并发控制,也就是 原子性、时序性、可见性的体现
推荐阅读
-
JavaScript实现父子dom同时绑定两个点击事件,一个用捕获,一个用冒泡时执行顺序的方法
-
$str=preg_replace("/[attach]/is""111"$str); 这一句怎么把111替换成可以执行的PHP代码
-
ES6 系列之 Generator 的自动执行的方法示例
-
hp-ux操作系统date命令
-
Windows CVE-2019-0708 远程桌面代码执行漏洞复现
-
利用Python如何批量修改数据库执行Sql文件
-
基于命令行执行带参数的php脚本并取得参数的方法,php脚本
-
Pytest自定义用例执行顺序(推荐)
-
php页面执行时间程序代码
-
阿里云ecs安装php 7 执行php-v 报错