parallel.for相关内容
我在使用 Parallel.For 方法时遇到问题.我正在拨打 GET 电话以取回列表.然后我想将该列表添加到主列表中.我尝试过非线程安全的 addRange,并且会在列表中返回错误的数据.我也试过使用 ConcurrentBag 也没有得到正确的数据.当我说没有获得正确的数据时,我的意思是列表中的某些数据要么重复,要么被覆盖. 这是我的代码(更新): var thisLock = new
..
我想找到按元素相乘两个数组的最佳方法.这是一个更广泛的项目的一部分,其中性能但不是唯一的考虑因素. 我今天开始用 C# (Linqpad) 编写一些函数,所以它没有以任何方式进行优化.下面代码的输出如下: Environment.ProcessorCount: 4向量.Count: 4对于顺序:129ms,总和:2.30619276241231E+25Plinq:344ms
..
我正在尝试使用 BlockingCollection 以试图更好地理解它们,但我正在努力理解为什么当我使用 Parallel 时我的代码在完成处理我的所有项目时挂起.对于 我只是给它添加了一个数字(制作人?): var blocksCollection = new BlockingCollection();Task.Factory.StartNew(() =>{而(计数 然后我正在尝试
..
我尝试编写一些东西来散列数字,并根据列表检查它们以查看是否存在匹配的散列. 我使用 for 循环使这个工作正常,然后我决定尝试使用 Parallel.For 加快速度 - 不幸的是,这会导致我在调试时遇到问题的 ArgumentOutOfRangeException. 公共类HashCompare{私人字符串encryptedCardNumber;私有加密器加密器;私有 BlockingC
..
我刚刚使用此链接 如下: Console.WriteLine("线程数:{0}", System.Diagnostics.Process.GetCurrentProcess().Threads.Count);整数计数 = 0;Parallel.For(0, 50000, options,(i, state) =>{计数++;});Console.WriteLine("线程数:{0}", Syst
..
我需要执行 n BackgroundWorkers,当他们完成时,我想引发一个事件,并根据他们的所有工作来做些事情.我的用例是创建队列,填充队列,然后仅运行一次.为此,我制作了一个ParallelQueue类.经过最初的测试,它似乎可以正常工作,但是我担心条件 _max == _iteration 并不是最好的条件,那就是评估队列中的所有工作是否已经完成.还是我对Queue的使用不是线程安全的,我
..
我有以下循环,该循环运行从base95到base10的转换.我正在使用数千位数字,因此需要BigIntegers. inst是base95字符串. Parallel.For(0, inst.Length, x => { result += BigInteger.Pow(95, x) * (inst[x] - 32); }); 如果我使用大约200个字
..
我有一个List TaskList项,我们可以使用并行循环进行迭代. 当TaskClass使用其自己的CompareTo(object obj)方法实现IComparable时,列表中的项目将按特定顺序排序. 因此,我们需要按顺序对项目进行操作. 请注意,它们不必按顺序完成,只需按顺序开始. 因此,TaskList [0]应该首先启动;然后是TaskList
..
我正在使用Parallel.For块内的Math.Net Numerics并行进行繁重的数学计算. 当我在具有4个内核(2 * 2)的本地系统中运行代码时,它正在使用所有4个内核. 但是当我在具有8个内核(4 * 2)的开发服务器中运行相同的代码时,它仅使用4个内核. 我尝试设置MaxDegreeOfParallism,但无济于事. 任何想法,为什么不使用所有内核.
..
我有一类范围 公共类avl_range { public long start {get ;组; } 公开端{组; } } 如果我使用普通的 FOR 可以完美地工作,但是必须等待每个命令完成并且每个查询需要8秒,所以10个查询需要80秒。 在并行版本中,如果我只打印范围完美,但是如果尝试执行命令,则说明该过程已在进行中。 {“操作已
..