0

基本上问题就在标题中。如果我有一个结构数组,那么 Buffer.BlockCopy 在多线程环境中会正常运行吗?换句话说,如果在 Buffer.BlockCopy 执行期间某个线程试图更新其中一个存储结构上的字段会发生什么?http://msdn.microsoft.com/en-us/library/teyhh36d.aspx文档说 Buffer 的静态方法(BlockCopy 是静态的)保证对于简单类型是线程安全的。但是如果我的结构只包含简单的类型,这个保证能不能对我有利一点?

4

1 回答 1

2

Buffer.BlockCopy它本身不是原子操作。没有什么可以阻止任何其他线程在BlockCopy执行时修改数组本身的数组中项的字段。

于 2012-09-27T01:24:40.667 回答