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);  
        });  
    }

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

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