win11系统下载 |  雨林木风win11系统下载 |  xp系统下载 |  番茄花园xp系统下载 |  萝卜家园xp系统下载 |  深度xp系统下载 |  电脑公司 |  xp系统之家
当前位置:首页 > 系统文章 >

带参数多线程之c#代码实例 提高CPU利用率

  • 日期:2023-03-31
  • 来源:

有时候为了提高CPU的利用率,我们就会选择在c#中使用多线程,即,在相同的时间里面做更多的事情(但前提条件是系统资源没有完全耗尽)。

  一、在什么样的情况下使用多线程

  因此,并非是处处使用多线程是上策,而是在硬件配置比较高的情况下,使用多线程是更好的选择,因为这样做更有效益。

  举个例子来说吧,比如,某机房有99台计算机,您想使用其中的一台计算机,利用PING命令来检查剩余的98台计算机,其网络状态是否畅通?

  你会怎么做?当然,很多人都知道,使用循环,在循环中调用PING命令来实现。这本身没有错,但是,这样的做法无异于先PING第一台,完毕之后再PING第二台,完毕之后再PING第三台……一直到完。这相当于什么呢,相当于逐一Ping这98台计算机。要知道PING是消耗时间的,尤其是当某台或多台计算机网络连接状态断开的时候,更消耗时间;万一所有的计算机都没有开机,那么,您Ping完98次,得需要多少时间?

  为了解决这个问题,我们需要使用多线程来处理。让这98次的Ping,在同一时间进行。如此计算,在效益和时间上,比上述的方法提供了98倍。

  二、带参数多线程之c#代码实例

  本例,本站要给大家介绍的是,带参数的多线程实例。实例的代码功能是,通过带参数的多线程,在同一时间Ping98台计算机,检查其网络连接是否正常。

  ①前提条件

  前提条件是,在uing中,引入如下的两个命名空间。

  using System.Threading;//多线程要使用它

  using System.Net.NetworkInformation; //Ping命令要使用它

  ②实例

  A:带参数的多线程函数代码

  public void TestConnection(object MyValue)//通过PING对方计算机名称或IP,检查计算机是否连接正常

  {

  string message;

  message = "";

  Ping p = new Ping();

  try

  {

  PingReply r = p.Send(MyValue.ToString().Trim());

  if (r.Status == IPStatus.Success)

  {

  message = "Success";

  }

  }

  catch

  {

  }

  finally

  {

  if (message == "Success")

  {

  //MessageBox.Show("网络连接畅通");

  }

  else

  {

  //MessageBox.Show("网络连接异常");

  }

  }

  }

  代码解释:上述的object MyValue就是要接收的参数。

  B:调用函数带参数的多线程代码

  Thread[] myThread = new Thread[98];//定义多线程数组(98个)

  int Myboot = 0;

  for(int i=1;i<=98;i++)

  {

  ParameterizedThreadStart ParStart = new ParameterizedThreadStart(TestConnection);//引用函数名称

  myThread[Myboot] = new Thread(ParStart);//定义多线程

  object O = “192.168.0.“+i.ToString().Trim();//给参数赋值

  myThread[Myboot].Start(O);//启动带参数的多线程

  Myboot = Myboot + 1;

  }

  }

  到此,实例完毕。以上代码,均本站严格测试,未发现任何错误。希望本文对您有帮助。

按字母检索

  • A
  • B
  • C
  • D
  • E
  • F
  • G
  • H
  • I
  • J
  • K
  • L
  • M
  • N
  • O
  • P
  • Q
  • R
  • S
  • T
  • U
  • V
  • W
  • X
  • Y
  • Z
  • win11下载 | win10系统下载 | windows7系统下载 | 系统下载 | windows7旗舰版 电脑系统下载 | windows xp | xp系统之家
    Win10系统_Windows7旗舰版_最新Win11系统下载_系统下载网.
    备案号:闽ICP备2023003223号-1邮箱:xitong66666@163.com .
    ghost xp win11下载 系统下载网 网站地图