C#:以自定义百分比创建CPU使用率

我希望在某些cpu使用条件下测试几台机器上的系统响应能力等.不幸的是,我只能创建~100%的使用率(无限循环)或没有足够的cpu使用率(我正在使用C#).

有没有办法,粗略的近似,因为其他任务也在系统上运行,以20,30,40%(等等)步骤人为地创建cpu使用?

据我所知,系统之间存在差异,因为cpu会有所不同.它更多地是关于可自定义cpu密集型计算的算法/想法,这些算法/想法在当前cpu上创建了足够的使用而没有最大化它我可以调整它们然后以某种方式调整它们以创建所需的百分比.

解决方法

你可以添加一个间隔唤醒的线程计时器,并做一些工作.然后调整间隔和工作量,直到您接近所需的负载.
private void button1_Click(object sender,EventArgs e)
    {
        m_timer = new Timer(DoWork);
        m_timer.Change(TimeSpan.Zero,TimeSpan.FromMilliseconds(10));
    }

    private static void DoWork(object state)
    {
        long j = 0;
        for (int i = 0; i < 2000000; i++)
        {
            j += 1;
        }
        Console.WriteLine(j);
    }

alt text http://i32.tinypic.com/15f4tp5.png

通过这个并调整循环的值,我能够为我的系统增加20%,60%和满载.它将使用额外的线程扩展多个内核,以实现更均匀的负载.

相关文章

在要实现单例模式的类当中添加如下代码:实例化的时候:frmC...
1、如果制作圆角窗体,窗体先继承DOTNETBAR的:public parti...
根据网上资料,自己很粗略的实现了一个winform搜索提示,但是...
近期在做DSOFramer这个控件,打算自己弄一个自定义控件来封装...
今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都...
最近在研究WinWordControl这个控件,因为上级要求在系统里,...