< 返回我的博客

hbgjh 发表于 2021-03-02 09:52

rust
let handles :Vec<_> =(0..10).map(|_|{
        thread::spawn(||{
            let mut x= 0;
            for _ in (0..1000000){
                x+=1
            }
            x
        })
    }).collect();

Debug
1.
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
耗时:PT0.211877100S秒

2.
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
耗时:PT0.231867500S秒

3.
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
耗时:PT0.198885600S秒

Release:
1.
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
耗时:PT0.026984800S秒

2.
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
耗时:PT0.014990900S秒

3.
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
rust线程:1000000 完成计数
耗时:PT0.009991S秒


---------------------------------------
c#
 Parallel.For(0, 10, i =>
            {
                var x = 0;
                for (int j = 0; j < 1000000; j++)
                {
                    x += 1;
                }
                Console.WriteLine("线程:{0} 完成计数", Thread.CurrentThread.ManagedThreadId);
            });
Debug:
1.
c#线程:5 完成计数
c#线程:1 完成计数
c#线程:4 完成计数
c#线程:6 完成计数
c#线程:7 完成计数
c#线程:5 完成计数
c#线程:4 完成计数
c#线程:1 完成计数
c#线程:7 完成计数
c#线程:6 完成计数
耗时:0.1360158秒
2
c#线程:4 完成计数
c#线程:1 完成计数
c#线程:5 完成计数
c#线程:4 完成计数
c#线程:6 完成计数
c#线程:4 完成计数
c#线程:5 完成计数
c#线程:6 完成计数
c#线程:1 完成计数
c#线程:6 完成计数
耗时:0.2220837秒
3
c#线程:1 完成计数
c#线程:7 完成计数
c#线程:4 完成计数
c#线程:5 完成计数
c#线程:6 完成计数
c#线程:7 完成计数
c#线程:4 完成计数
c#线程:5 完成计数
c#线程:6 完成计数
c#线程:1 完成计数
耗时:0.2674945秒

Release:
1
c#线程:5 完成计数
c#线程:1 完成计数
c#线程:4 完成计数
c#线程:6 完成计数
c#线程:7 完成计数
c#线程:5 完成计数
c#线程:1 完成计数
c#线程:4 完成计数
c#线程:7 完成计数
c#线程:6 完成计数
耗时:0.0419944秒
2
c#线程:5 完成计数
c#线程:1 完成计数
c#线程:4 完成计数
c#线程:6 完成计数
c#线程:7 完成计数
c#线程:5 完成计数
c#线程:1 完成计数
c#线程:4 完成计数
c#线程:7 完成计数
c#线程:6 完成计数
耗时:0.0421988秒
3
c#线程:1 完成计数
c#线程:5 完成计数
c#线程:6 完成计数
c#线程:4 完成计数
c#线程:1 完成计数
c#线程:5 完成计数
c#线程:7 完成计数
c#线程:1 完成计数
c#线程:4 完成计数
c#线程:6 完成计数
耗时:0.0461132秒


       Debug    Release
c#     0.13s    0.041s
RU     0.19s    0.009s

Release时C#耗时长,因C#是要经过CLR运行。

评论区

写评论
luyikk 2021-07-20 01:45

我觉得嘛 这是个沙雕测试,大家看看就好

chpack 2021-07-19 11:34

我觉得吧,循环都被优化没了

作者 hbgjh 2021-03-06 15:05

THANKS

👇
Mike Tang: 用一下md语法,很简单的,代码段是:

```

```
Mike Tang 2021-03-02 12:39

用一下md语法,很简单的,代码段是:

```

```
1 共 4 条评论, 1 页