C#并行计算 Parallel.ForEach[通俗易懂]

C#并行计算 Parallel.ForEach[通俗易懂]C#并行计算Parallel.ForEach///<summary>///获取订单链接///</summary>publicvoidGetOrders(){GetToken();HttpHelperhttp=newHttpHelper();HttpItemitem=newHttpIte…

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

C#并行计算 Parallel.ForEach

  1. /// <summary>  
    /// 获取订单链接  
    /// </summary>  
    public void GetOrders() {  
        GetToken();  
        HttpHelper http = new HttpHelper();  
        HttpItem item = new HttpItem();  
        item.URL = "https://merchant-api.jet.com/api/orders/{status}".Replace("{status}", "acknowledged");  
        item.Method = "get";  
        item.ResultCookieType = ResultCookieType.CookieCollection;  
        item.ContentType = "application/json";  
        item.Header.Add("Authorization", string.Format("bearer {0}", Token.id_token));  
        item.Header.Add("Accept-Encoding", "gzip, deflate");  
        item.PostEncoding = System.Text.Encoding.UTF8;  
        item.UserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; EmbeddedWB 14.52 from: http://www.bsalsa.com/ EmbeddedWB 14.52; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.2; .NET4.0C; .NET4.0E; Tablet PC 2.0; TCO_20150304085044)";  
        item.KeepAlive = false;  
        item.Header.Add("Cache-Control", "no-cache");  
        HttpResult result = http.GetHtml(item);  
        OrdersUrl UrlInfo=result.Html.Str2Entity<OrdersUrl>();  
        //创建一个订单任务并发集合  
        ConcurrentQueue<OrderInfo> Queue = new ConcurrentQueue<OrderInfo>();  
        //并行计算 数据分区 均匀分布到各个内核  
        Parallel.ForEach(Partitioner.Create<string>(UrlInfo.Urls,true),url=> {  
            OrderInfo Order = GetOrderDetail(url);  
            Queue.Enqueue(Order);  
        });  
        Parallel.ForEach(Partitioner.Create<OrderInfo>(Queue.ToArray(),true),order=> {  
            SaveOrder(order);  
        });  
    }

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

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

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


相关推荐

  • linux启动时开启screen

    linux启动时开启screen

    2022年3月13日
    36
  • dropna(subset)_python中的head函数

    dropna(subset)_python中的head函数”””ReturnobjectwithlabelsongivenaxisomittedwherealternatelyanyorallofthedataaremissingParameters———-axis:{0or‘index‘,1or‘columns‘},ortuple/listthereofPasstupleorlist…

    2022年9月18日
    0
  • batchsize怎么设置(aperturesize)

    现在很多算法都用到了batch,这里简单说下batchsize如何设置先来介绍下epoch、iteration、batchsize三者区别:batchsize:批大小,在深度学习中,一般采用SGD(随机梯度下降)训练,即每次训练在训练集中取batchsize个样本训练;iteration:1个iteration等于使用batchsize个样本训练一次epoch:1个epoch等于使用训练集中的全部样本训练一次为什么要设batchsize?1.当数据量足够大的时候可以适当的…

    2022年4月10日
    281
  • es6类型转换_es6转换es5

    es6类型转换_es6转换es5>虽然我觉得没什么用,但是记一下吧[TOC]####1.新建项目项目目录结构:![](https://box.kancloud.cn/1e80da2d1c4c01681a65023089a9f18a_229x108.png)####2.src中的**index.js**为你写的es6语法代码我们例子写:“`letb=1;console.log(b);constname=”…

    2022年9月24日
    0
  • jsonObject_jsonobject.tobean

    jsonObject_jsonobject.tobeanJSONObject简介转自:http://blog.csdn.net/huangwuyi/article/details/5412500JSONObject与JSONArray的使用一、JAR包简介     要使程序可以运行必须引入JSON-lib包,JSON-lib包同时依赖于以下的JAR包:     1.commons-lang.jar     2.comm

    2022年9月15日
    0
  • vuecli3配置webpack_vuecli webpack配置

    vuecli3配置webpack_vuecli webpack配置前言如果我们想在webpack中使用vue,就需要在webpack中配置vue配置vue首先,我们需要在项目中安装vue,安装命令如下:npminstallvue–save安装完成后

    2022年7月30日
    12

发表回复

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

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