2012-03-12 29 views
1

当2个进程通过共享存储器在32位进行通信的solaris i386的拱uint64_t中在32位机写入

  1. 能够保证所有的用于uint64_t中的数据类型的值,(值< 2^32)被写入在单个内存位置和(值> 2^32)写入2个内存位置?
  2. 32位内存读取是否是原子。
+0

你具体问什么保证32位Solaris提供在i386?或者这是一个关于在C++中的32位平台上的64位操作的通用问题? – 2016-10-05 18:32:21

回答

3

64位值总是写入64位内存! 写入几乎肯定不是原子的(除非架构明确保证这一点)。


1.除,当然,当它不是在所有写入存储器(的即当没有register spill。但是,这是题外话。