asdddddd1 2017-02-07 14:42 采纳率: 100%
浏览 3317
已采纳

c# 关于一个任务分配多个线程(挺着急的)

描述:假如有5w条数据,数据格式是商品id、商品的价格,在5w数据中,可以重复出现。
现在就是想循环处理,将重复的id的价格合并在一起,for循环的话,时间太长了,想着
能不能用将这5w数据分配给5个线程,分别处理,还要保证每个线程处理都不相同。
小弟,没接触过线程,特请教大神!,最好能贴上你的代码!

  • 写回答

2条回答 默认 最新

  • kevin529_super 2017-02-08 00:43
    关注

    class Program
    {
    static void Main(string[] args)
    {
    Task thread1 = Task.Factory.StartNew(() =>
    {
    th1(0,25000);
    });
    Task thread2 = Task.Factory.StartNew(() =>
    {
    th2(25001, 50000);
    });
    Task.WaitAll(thread1,thread2);
    Console.WriteLine("處理完成!");
    Console.ReadKey();
    }
    public static void th1(int beginNum ,int endNum)
    {
    for(int i=beginNum;i<=endNum;i++){
    Console.WriteLine("線程1處理了第"+i+"行數據");
    }
    }
    public static void th2(int beginNum, int endNum)
    {
    for (int i = beginNum; i <= endNum; i++)
    {
    Console.WriteLine("線程2處理了第" + i + "行數據");
    }
    }

    }这里只声明了两个线程,要是想多个也可以依次声明就好,线程不是越多越好,根据自己电脑配置声明数量。要是还是不懂的可以百度Task,很多说明的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)
  • ¥20 matlab yalmip kkt 双层优化问题
  • ¥15 如何在3D高斯飞溅的渲染的场景中获得一个可控的旋转物体
  • ¥88 实在没有想法,需要个思路