《并行计算的编程模型》一3.6.3 锁-阿里云开发者社区

开发者社区> 华章计算机> 正文

《并行计算的编程模型》一3.6.3 锁

简介: 本节书摘来华章计算机《并行计算的编程模型》一书中的第3章 ,第3.6.3节, [(美)帕万·巴拉吉(Pavan Balaji)编著;张云泉等译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
+关注继续查看

3.6.3 锁

OpenSHMEM在对称内存中实现互斥锁,这些函数的原型如代码清单3-12所示。lock参数必须存在于对称内存空间中并在试图使用前被初始化为0,一般都在全局范围将它们声明为静态变量并初始化为0,或者程序员在lock初始化后和被使用前调用全局同步屏障。shmem_set_lock()函数将在获得锁后返回,如果需要的话会等到锁被清除。shmem_clear_lock()函数将释放锁,且仅应该被通过set函数获得锁的PE调用。shmem_test_lock()函数会尝试获取锁,如果成功返回0,若锁已被设置则返回1,正如其他范型中的锁,有必要让程序员确信程序没有创建死锁。
screenshot

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
使用OpenApi弹性释放和设置云服务器ECS释放
云服务器ECS的一个重要特性就是按需创建资源。您可以在业务高峰期按需弹性的自定义规则进行资源创建,在完成业务计算的时候释放资源。本篇将提供几个Tips帮助您更加容易和自动化的完成云服务器的释放和弹性设置。
12074 0
Java网络编程和NIO详解3:IO模型与Java网络编程模型
这位大侠,这是我的公众号:程序员江湖。 分享程序员面试与技术的那些事。 干货满满,关注就送。  基本概念说明 用户空间与内核空间 现在操作系统都是采用虚拟存储器,那么对32位操作系统而言,它的寻址空间(虚拟存储空间)为4G(2的32次方)。
1253 0
10059
文章
0
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载