现在的问题是,我需要对一个listbox中已经列出来的文件进行查询操作。
文件很多,可能有几百上千个,要进行StreamReader的读取操作。
我会使用多线程,但是文件列表列表循环,一个文件一个线程的那种,不会控制线程数,比如说我只需要使用10个线程来操作这些文件,怎么做!
好像和线程池有关,但代码怎么写呢?请指点
知道和线程池有关,但不知道怎么写啊,能否给点代码!
再追加50分,希望高手给写个例程。
---------------------------------------
新手,刚学会用线程,还不会用线程池,呵呵,所以想请教各位高手。
C#多线程实现大量文件读取
1、读取所有的文件名,按照需求,分成90个字符串数组 2、启动thread线程或者delegate委托事件来执行文件的读取,传递的参数就是上面的数组中的一个 3、线程中读取文件列表的方法。这个要看你要做什么了。我不知道你读取文件要做什么,如果要插入资料库的话,你还得考虑不同线程读取资料库会不会锁表。具...
在C#中怎样运用多线程[MTAThread]
C#中第一个打开窗口的线程是主线程,也是处理UI的线程,最好保持这个线程通畅,即不要有阻塞操作,如Thread.Sleep(10);等这样是不好的。耗时的线程需要打开新的线程来操作,而且最好把IsBackground属性设为True。这样在所有前台线程推出后,这些后台线程也自动退出。
在C#中如何使用多线程,每隔几秒去执行一个方法?
\/\/\/ \/\/\/ 简单的 线程执行的 方法.\/\/\/ \/\/\/ 这个方法是 静态的 \/\/\/ public static void ThreadFunc(){ \/\/ 线程停止运行的标志位.Boolean done = false;\/\/ 计数器 int count = 0;while (!done){ \/\/ 休眠1秒.Thread.Sleep(1000);\/\/ 计数器递增 count++;\/\/ 输出.Console.WriteLine(...
C#多线程读取文件
建议使用 backgroundworker 或者 delegate 委托的方式实现,下面是使用委托的线程安全模式, textBox1是你的编辑框:--- using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.IO;usin...
c#编程中,怎样使用多线程处理数据库读取的信息
\/\/你分给5个线程 他也不是同时出来的,多线程还是要等CPU闲下来才能工作的。。。\/\/非要这样做 参考如下 给你举个例子 取第二条记录。Thread threadGetTop2=new Thead(new ThreadStart(GetTop2));threadGetTop2.Start();private void GetTop2(){ \/\/这里用ADO.NET打开连接 string sql="se...
C#程序中如何启用多进程?
下面是利用多线程开启进程的代码,你参考下 for (int i = 0; i < 5; i++) { \/\/开启5条线程,每条线程开启一个进程 new System.Threading.Thread(delegate() { System.Diagnostics.Process.Start("calc.exe"); }).Start(); } ...
C#编写多线程如何一边读取txt文件一边统计奇数偶数
首先编写一个程序随机产生1000000个整数,并将其保存到一个文本文件中。再编写一个多线程程序,一个线程负责从文件读取整数,读出来的整数放在缓冲区(队列或数组中),如数组的大小定义为5000。一个线程负责统计,同样将计算结果和花费时间输出。用C#编写... 展开 heartbreaker...
...c#中如何利用多线程同时播放多个声音文件,我用的是SoundPlayer的play...
);string[] parameters = new string[1];parameters[0] = "1";myThread.Start(parameters);private void StartThread(object obj){ string[] parameters = (string[])obj;\/\/这里写你调用的方法,parameters[0],就是你传过来的参数,可以用这个参数来判断播放不同的声音文件 } 希望对你有帮助....
C# 中怎么使用带参数的多线程呢
然后在线程方法里再转回来。如果有多个变量则可以自己定义一个struct或者类,然后转换成object型,然后在线程方法里再转回来。另ThreadStart是没有参数的,要使用带参数的方法这样使用:Thread thr = new Thread(a);而不是 Thread thr = new Thread(new ThreadStart(a));...
C#多线程操作SqlServer
1、你必须开启代理服务sql server agent 2、在企业管理器里,打开“管理—>sqlserver代理—>作业”,新增作业,新建“步骤”,在步骤里填入你要转移的SQL语句到“命令”框里。然后新建“调度”。3、启动作业。OK,自己试一下。另外,如果你转移的数据量比较大,还可以通过建立SQLSERVER数据复制的包来...