并行处理期间的值存储

2023-12-06

我只是尝试了这个简单的程序...没什么特别的..

double[] a = new double[100000];
double[] b = new double[100000];

List<double> a1 = new List<double>();
List<double> b1 = new List<double>();

for (Int64 i = 0; i < 100000; i++)
{
    a[i] = i;
    a1.Add(i);
}

Parallel.For(0, 100000, delegate(Int64 i)
{
    b[i] = i;
    b1.Add(i);
});

根据这段代码,a、b、a1、b1各必须存储100000个数字。但有时,变量 b1(由并行进程更新的列表)的数字少于 100000 个(在 90000 到 100000 之间保持变化)。我想知道为什么...

Strange Memory Allocation


List<T>对于同时写入的多个线程来说不是线程安全的,如上所述MSDN 页面。您必须同步访问(违背了多线程的目的)或使用线程安全集合。有可用的线程安全集合System.Collections.Concurrent命名空间。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

并行处理期间的值存储 的相关文章

随机推荐

  • 如何将 pdfstamper 转换为字节数组

    在我的应用程序中 我需要读取现有的 pdf 并将条形码添加到现有的 PDF 并将其传递到输出流 这里现有的 pdf 就像模板 我正在使用 iText jar 添加条形码 我想知道转换的可能性PdfStamper对象到字节数组或PdfCont
  • 在 Android 应用程序中创建 Facebook 事件

    我是安卓新手 我只想create我要开发的应用程序中的 Facebook 活动 稍后我会添加邀请好友的功能 我想以通知或任何好的方式显示邀请 我在互联网上做了很多研究 但找不到解决方案 我真的很感激任何解决方案 谢谢你 package co
  • 将文件复制到同一目录中的多个文件夹

    我有一个文件 我们将其命名为 Examples DBF 该文件的位置是C EXAMPLE DBF 现在我想将此文件复制到另一个位置的多个文件夹中 这些文件夹是dated子目录 因此它们被命名为 20140101 20141231 它们的位置
  • 打开和关闭其他 UIViewController - 除了使用协议和委托之外还有其他方法吗?

    从 FirstVC 屏幕中打开另一个屏幕 以便可以再次关闭它的正常方法如下 SecondVC secondVC SecondVC alloc initWithNibName SecondVC bundle nil secondVC dele
  • 无法使用 mongodb 同步打开 Realm

    我无法打开领域 我的设置有问题 这是应用程序中的代码 var configuration user configuration partitionValue user user id configuration objectTypes Us
  • 未找到版本“1.0”的架构“mfp_default_schema”的 ID 为“ADAPTER_CONTENT”的配置

    我正在尝试使用 MobileFirst Foundation 8 0 和 Postgres 9 5 部署带有 Hikari Pool 的 JavaSQL 适配器 部署时 我在日志中收到以下内容 ERROR FWLSE0321 State c
  • 过滤对象数组以保留在平面白名单数组中找到的具有特定属性值的对象

    我有这个多维数组 currencies currencies array 0 gt object array name gt algo fullName gt Algorand 1 gt object array name gt ardr
  • 使用 Mokito 时,实际对象和模拟对象有什么区别?

    在下面的程序中 我尝试使用mockito with junit在我的测试用例中 但我不明白 Mokito 如何帮助我的测试创建对象 我在这里没有看到任何特别的东西 因为看起来 mokito 正在实例化实际的对象 public class T
  • 从多个表中选择数据?

    我有3个表 3个字段都一样 我基本上想从每个表中选择信息 例如 userid 1 我想从所有 3 个表中选择数据 其中userid 1 我目前正在使用 SELECT r p l FROM random r LEFT JOIN pandom
  • 来自 Windows 窗体的 SagePay 集成

    我被要求将 Windows 表单应用程序与 SagePay 集成 以便直接从该应用程序接收付款 SagePay 文档讨论了 ASP NET 所以我不确定这是否可行 有人以前将 WinForm 应用程序与 SagePay 集成过吗 是否可以
  • 方法本地内部类成员范围访问

    如何访问与内部类成员实例或内部类方法局部变量同名的方法变量 class A int a 10 1 public void someMethodA final int a 20 2 class B int a 30 3 public void
  • 使用命令行将库/框架添加到 Xcode 项目?

    我正在寻找一种使用命令行将库添加到 Xcode 项目的方法 我已经成功地将文件添加到组中XCS tool 但它不支持库 例如 我希望能够使用终端上的命令将 CoreVideo framework 添加到特定项目 该项目可以处理框架 http
  • 在android中导出tesseract OCR的HOCR输出

    我尝试使用tess two 适用于 Android 的 Tesseract Tools 的一个分支 我想打开hocr超正方体中的输出 由此link 我尝试设置变量tessedit create hocr确实如此 但我在输出中看不到 hocr
  • 在 Java 中从 FileOutputStream 创建和写入文件

    好的 我正在开发一个项目 在该项目中 我使用 Java 程序来启动两个类之间的套接字连接 一个FileSender and FileReceiver 我的基本想法是FileSender看起来像这样 try writer new DataOu
  • Twilio - 具有 SNI 支持的 TwiML

    当我使用 TwiML 发送命令时 Twilio API TwilioProxy 1 1 在没有 SNI 支持的情况下通过 HTTPS 向我的 Apache 服务器发出请求 我需要阻止非 SNI 客户端 SSLStrictSNIVHostCh
  • 从 TotalCaptureResult 获取 bytes[]

    我使用 Android 中的 Camera2 API 从相机获取 TotalCaptureResults 对象 我使用的是预览 而不是单个图像 有没有办法从 TotalCaptureResults 获取 bytes 谢谢 简短的回答 不 A
  • 在多处理中使用共享数组

    我正在尝试在 python 中运行并行进程 其中我必须根据某些条件从大数组中提取某些多边形 这个大数组有 10k 个已索引的多边形 In a extract polygon我传递的函数 数组 索引 基于索引 该函数必须返回与该索引对应的多边
  • 字符串到颜色 Xamarin.Form

    如何将 xamarin from 中的字符串转换为颜色 没有 Color fromName 方法 string colorStr Blue BoxView objBoxView new BoxView HeightRequest doubl
  • 未找到命令 MCC

    我正在尝试在 Ubuntu 14 04 中使用 Matlab 2013a 创建一个可执行文件 经过一番研究 我理解了以下命令 创建了可执行文件 mcc mv matlabfile m 但是 当我运行此命令时 出现以下错误 No comman
  • 并行处理期间的值存储

    我只是尝试了这个简单的程序 没什么特别的 double a new double 100000 double b new double 100000 List