.net Parallel.Foreach的Continue和Break和Return;

.net Parallel.Foreach的Continue和Break和Return;在Foreach的时候需要多加一个ParallelLoopStatevarparallelOption=newParallelOptions(){MaxDegreeOfParallelism=6}; break类似于for的continue,而stop就类似于for的break Parallel.ForEach(As,parallelOption,(A

大家好,又见面了,我是你们的朋友全栈君。

在Foreach的时候需要多加一个ParallelLoopState

var parallelOption = new ParallelOptions() { MaxDegreeOfParallelism = 6 };

 Parallel.ForEach(As, parallelOption, (A,ParallelLoopState) =>

{

if(needContinue){

  ParallelLoopState.Break();//告诉CPU之后的迭代不需要执行,如0-1000的判断,从100开始break,则100之前的任然执行,从101开始到1000都不需要执行了
                return;
//不加return,可能会发生该进程资源未释放。

}

}

 Parallel.ForEach(As, parallelOption, (AParallelLoopState) =>
{

if(needBreak){

  ParallelLoopState.Stop();//告诉CPU放弃整个迭代
                return;
//不加return,可能会发生该进程资源未释放。

}

如果需要像For的Continue一样,则直接使用Return

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/161818.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • startActivityForResult的坑

    startActivityForResult的坑android中经常会遇到从当前的Activity跳转到另外一个Activity的情况,通常情况下我们会直接选择用startActivity或者startActivityForResult。如果你对这两个方法还不知道的话可以去https://www.cnblogs.com/fuck1/p/5456337.html看看。本文不会告诉你怎么使用这个方法,而是会说说笔者自己遇到的问题以及解决办法。事情…

    2022年7月11日
    18
  • 这个问题让我疯掉!用oledbcommand执行一个插入一条记录的程序,到现在也没有解决!…

    这个问题让我疯掉!用oledbcommand执行一个插入一条记录的程序,到现在也没有解决!…数据库结构:StringStr=”INSERTINTODataHis(时间,开盘价,最高价,最低价,收盘价)VALUES(’98-02-12′,4,34,45,56)”;//StringStr=”select*fromDataHis”;stringstrConn=”Provider=Mic…

    2022年5月12日
    30
  • Java实现九九乘法表[通俗易懂]

    Java实现九九乘法表[通俗易懂]有时候我们在java编程的时候,想实现九九乘法表的效果,怎么实现呢,下面来分享一下方法输出九九乘法口诀表,如图所示。观察九九乘法口诀表,可以得出图表的规律:总共有9行,第几行就有几个表达式。同时要注意每行表达式的规律:第j行,表达式就从j1开始,一直到jj结束,共有j个表达式,这个效果可以通过一次循环实现。这样的话,正好可以通过双重循环来控制输出,外层循环控制行数,内层循环控制列。还有个地方…

    2022年7月25日
    10
  • 笔记35-JavaScript高级

    笔记35-JavaScript高级今日内容:1.JavaScript: 1.ECMAScript: 2.BOM: 3.DOM: 1.事件DOM简单学习:为了满足案例要求*功能:控制html文档的内容*获取页面标签(元素)对象:Element *document.getElementById(“id值”):通过元素的id获取元素对象*操作Element对象: 1.修改属性值: 1.明确获取的对象是哪一个? 2.查看API文档,找其中有哪些属性可以设置 2.修改标签体内容: *

    2022年8月20日
    9
  • docker卸载命令_docker删除文件

    docker卸载命令_docker删除文件使用yum安装docker(安装过程可以参照linux安装docker),如需卸载docker可以按一下步骤操作:1、查看当前docker状态如果是运行状态则停掉systemctlstopdocker2、查看yum安装的docker文件包yumlistinstalled|grepdocker查看docker相关的rpm源文件rpm-qa|grepdocker3、删除所有安装的docker文件包yum-yremovedoc

    2025年10月8日
    6
  • shell创建文件

    shell创建文件创建文件夹shell脚本#!/bin/bashdir="/root/test_dir"if[!-d"$dir"];thenmkdir$direcho"创建文件夹成功"elseecho"文件夹已经存在"fi添加可执行权chmod+xtest_file.sh创建文件shell脚本#!/bin/bashfileP…

    2022年6月18日
    36

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号