可以弄一个计时器,设定Interval =1000,然后每次触发计时器的时候判断需要执行那些任务,然后开启多线程分别执行各个任务。
解决方案 »
- WPF界面切换问题
- c# winform 可以画出不规则图形的pictureBox么
- 寻找朋友
- datagrideview 绑定后,更改列类型
- 一个小问题!!!!!!!!
- 多线程问题:两个线程做类似的工作,只有一个线程工作?
- 如何创建函数或属性的提示信息?
- 谁能深入地介绍一下DictionaryBase的实现?如何优化它的性能?
- 如何在ListView中实现点击列名,整个ListView就按照这个的值重新排序?
- 如何用最高效的方法,从一组以"\\"为分隔符的string中提取字符串
- .net自动化测试之道,程序无法编译通过
- 关于httpwebresponse和httpwebrequest的用法问题
//======================================================================
//
// Filename : ThreadPool 1.txt
// Description : 线程池示例: 等待指定的时间后取值
//
// created by 枫中玫瑰 at 13:51 2010-08-30
//
//====================================================================== private void ThreadPool_Click(object sender, EventArgs e)
{
int[,] data = new int[,] { { 3000, 1 }, { 4000, 1 }, { 5000, 0 }, { 6000, 1 }, { 7000, 0 } }; for (int i = 0; i < 5; i++)
{
// 开辟线程, 传递数据用结构体封装
ThreadPool.QueueUserWorkItem(new WaitCallback(GetValueMethod), new MyData(data[i, 0], data[i, 1]));
}
} /// <summary>
/// 线程池所执行的方法
/// </summary>
/// <param name="ob">传入的数据</param>
private void GetValueMethod(object ob)
{
MyData de = (MyData)ob;
Thread.Sleep(de.waittime );
Console.WriteLine("等待" + de.waittime + "后, 取值:" + de.value);
} /// <summary>
/// 数据结构体
/// </summary>
struct MyData
{
/// <summary>
/// 等待时间
/// </summary>
public int waittime;
/// <summary>
/// 取值
/// </summary>
public int value;
/// <summary>
/// 构造函数
/// </summary>
/// <param name="time">时间</param>
/// <param name="data">数据</param>
public MyData(int time, int data)
{
waittime = time;
value = data;
}
}