博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《并行计算的编程模型》一3.4.2 分配和释放
阅读量:6694 次
发布时间:2019-06-25

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

3.4.2 分配和释放

对称堆的分配和释放函数与C语言标准的分配和释放函数类似,唯一复杂的因素是用户必须确保每个PE在大小和顺序上执行完全相同的分配序列。这样做能确保对称堆的一致性,允许PE使用自身对象的地址定位对称对象。

对称准则:每个PE的分配和释放操作都要按相同的顺序并使用相同的变量来执行。不能保证必要的对称性至少会导致程序挂起,因为分配是全局同步事件。
代码清单3-2通过创建三个对称对象展示了这一准则。数组a和b通过static关键字保证了对称,指针c指向了另一块由shmalloc()分配再由shfree()释放的对称内存(有10个整数的数组)。因为每个PE实例有相同的声明和动态分配序列,所以这个堆是对称的。
screenshot
screenshot
代码清单3-3展示了几个违背对称准则之处。注意该程序的主要错误是分配的执行、顺序或大小都一定程度上取决于每个PE上不同的数据。
screenshot

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

你可能感兴趣的文章
逝去的2018年,年度总结
查看>>
链客区块链技术面试题目专题(二)
查看>>
你的like语句为啥没索引?
查看>>
PHP中header头设置Cookie与内置setCookie的区别
查看>>
前端下载 图片 总结
查看>>
Vue表单输入绑定
查看>>
LINUX下进程打开的文件怎么和底层磁盘关联的?
查看>>
Java 设计模式之命令模式
查看>>
可能是把Java内存区域讲的最清楚的一篇文章
查看>>
PHP中的几个随机数生成函数
查看>>
Anaconda不同envs的pip和python的版本
查看>>
深度学习与神经网络:最值得关注的6大趋势
查看>>
给SUBVERSION-EDGE和GITLAB-CE增加多LDAP域认证支持的经历
查看>>
SQLServer之创建全文索引
查看>>
如何以并发方式在同一个流上执行多种操作?--复制流
查看>>
Spring Boot 参考指南(开发Web应用程序)
查看>>
策略模式总结
查看>>
javascript块级作用域处理闭包和释放内存的垃圾回收
查看>>
快速入门React
查看>>
正则表达式语法入门
查看>>