当前位置: 首页 > 编程笔记 >

C#线程池操作方法

巩选
2023-03-14
本文向大家介绍C#线程池操作方法,包括了C#线程池操作方法的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了C#线程池操作方法。分享给大家供大家参考。具体如下:

static void Main(string[] args)
{
 //设置线程池中的线程数最大为1000,
 //第一个为工作者线程,第二个为I/O线程
 ThreadPool.SetMaxThreads(1000, 1000);
 for (int i = 0; i < 10;i )
 {
  ThreadPool.QueueUserWorkItem(new WaitCallback(ShowMessage), string.Format("当前编号{0}",i));
 }
 Console.ReadLine();
}
//带参数 无返回值
static void ShowMessage(object x)
{
 string current = string.Format("当前线程id为{0}", System.
  Threading.Thread.CurrentThread.ManagedThreadId);
 //等待1秒钟
 System.Threading.Thread.Sleep(1000);
 Console.WriteLine(string.Format("{0},输入为{1}", current, x));
}

希望本文所述对大家的C#程序设计有所帮助。

 类似资料:
  • 本文向大家介绍c++线程池实现方法,包括了c++线程池实现方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了c++线程池实现方法。分享给大家供大家参考。具体分析如下: 下面这个线程池是我在工作中用到过的,原理还是建立一个任务队列,让多个线程互斥的在队列中取出任务,然后执行,显然,队列是要加锁的 环境:ubuntu linux 文件名:locker.h 文件名:locker.cpp 文件名

  • 本文向大家介绍C#实现跨线程操作控件方法,包括了C#实现跨线程操作控件方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#实现跨线程操作控件方法,分享给大家供大家参考。具体实现方法如下: 由于在.net平台下Winform、wpf禁止跨线程直接访问控件,因此在必须跨线程访问控件的时候采用异步方式。 1、winform项目中跨线程访问控件: 编写一个Winform小实例:在做winfor

  • 我已经实现了一个线程池。现在,它的基本操作如下: 空初始化(布尔detached_threads); bool调度(ulux(*dispatch_fn)(ulux), ulux arg, boolfree_arg); void shut\u down(); 静态无效*execute_task(无效*arg); 现在我想添加等待()操作,它将由主线程调用,并等待线程池中的所有线程完成它们正在执行的任

  • 问题内容: 在http://marcio.io/2015/07/handling-1-million-requests-per-minute-with- golang/ 提供的示例中,很多地方都引用了该示例。 分派服务完许多工作后,工人池(chan chan工作)会不会耗尽?因为从信道和信道工作拉出第一类型后没有被补充被调用的第一次?还是我想念/误读了什么?如何为WorkerPool补充可用的工作

  • 在C 03中,我使用了带有自建线程池的pthon,它总是保持几个线程运行(因为很慢),这样我就可以为小任务启动线程,而无需考虑性能问题。 现在,在C11中,我们有d::线程。我想标准没有说明具体的实现,所以我的问题是关于标准库实现的。他们通常选择构建s很便宜的池方法(例如,在posx上不调用),还是只是一个包装器? 换句话说,在C11中仍然推荐线程池,或者我应该在需要时创建一个,并将性能留给标准库

  • 我需要创建一个并行执行多个操作的应用程序。我曾考虑过使用线程或线程池,但我以前从未使用过,所以我发现这相当困难。Thread应按以下方式工作: 所有系统应同时运行。你认为我应该如何实现这一点?