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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 自己的中文名用英文_如何根据姓名首字母排序

    自己的中文名用英文_如何根据姓名首字母排序一个功能需求,做一个类似联系人列表的功能,点击名称获取对应的id,样式简陋,只是一个模板,原来是uniapp项目,根据需要改成了vue,需要的自行设计css流程获取数据提取首个字的拼音的首个字母排序并分组直接上代码吧<template> <div> <divv-for=”(item,index)inindexList”> <div><b>{{item.title}}</b></div> .

    2022年10月10日
  • oracle dba和sysdba的区别

    oracle dba和sysdba的区别之前老是把dba和sysdba混为一体,今天看到论坛在讨论两者的区别,特记录如下:SYSDBA不是权限,当用户以SYSDBA身份登陆数据库时,登陆用户都会变成SYS。sysdba身份登陆可以打开,

    2022年7月3日
  • java io流面试_java面试核心知识点

    java io流面试_java面试核心知识点好久不见的IO流对IO流的学习,我记得还是初学Java基础的时候,后来找工作过程中经常看到有些招聘信息中写到熟悉IO流,现在想想IO流,真的是一脸懵逼,不说这么多废话了,IO流这次好好整理一下。说说IO流的类别在说流的类别之前,先说说什么是流,流其实就是对输入输出设备的抽象,可以把输入输出流理解为是一个通道,输入输出是相对程序而言的,如果是输出流,也就是往文件中写文件,而输入流,则是从文件中读取文件。从三个方面对IO流进行总结,一、字节流(一般都是xxxStream),二、字符流(xxxRead、xx

    2022年10月20日
  • double 转 BigDecimal 失真问题

    double 转 BigDecimal 失真问题最近在看银行家算法的时候发现原博文中用的BigDecimal有问题,所以总结了BigDecimal失真问题,自己也总结了几种经常用的转换方式,并且列出来,以防以后忘记,代码如下      doubledb=211288.555;       Stringstr="211288.555";       BigDecimalrw=BigDecimal.valueOf(…

    2022年5月4日
  • 香农编码和哈夫曼编码_香农编码效率可以大于1吗

    香农编码和哈夫曼编码_香农编码效率可以大于1吗香农编码哈夫曼编码费诺编码的比较文章目录哈夫曼编码编码步骤例子优点缺点费诺编码编码步骤例子优点缺点香农编码编码步骤例子优点缺点参考备注:本文除了例子与数据,其他内容均为整合网络资源。哈夫曼编码编码步骤S1将信源符号按照概率大小从大到小排列;S2把概率最小的两个信源符号分成一组,其中,上面一个编码为0,下面一个编码为1,并将这两个符号的概率加起来,其结果再与尚未处理过的符号重…

    2022年9月10日
  • Java Dao设计模式

    Java Dao设计模式

    2021年6月17日

发表回复

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

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