多个线程同时执行任务,任务过程中会返回验证码图片,要求用户输入验证码内容,如何把图片轮流输出到程序界面,并且让线程接收用户输入的信息然后继续任务?
解决方案 »
- Pie Chart 如何同时显示数字与百分比?
- 求指导:C#中向数据库表写内容出现问题
- 请问我的数据库要从05升级到08,我需要修改哪些代码啊?
- 视频播放器
- 很简单的问题,此存储过程错在哪里
- 请问怎么将dataset里面的表user导出成EXCE文件
- 哪位高手能解决啊?
- 怎样将一个double类型的数据转换成一个百分数?
- Enterprise Library3.0 DataAccess使用困惑,望解答,感激!
- C#中双引号本身怎样才能被拼到一个字符串里?
- jdk1.7 现在到底出来没有??
- C#.NET开发Winform使用MySQL数据库 无法将“System.Byte[]”的对象强制转换为类型“System.IConvertible”
ManualResetEvent mre = new ManualResetEvent(false);ThreadPool.QueueUserWorkItem(param =>
{
Thread.Sleep(5000);
Console.WriteLine(1);
mre.Set();
});ThreadPool.QueueUserWorkItem(param =>
{
Thread.Sleep(2000);
mre.WaitOne();
Console.WriteLine(2);
});先输出 1,再输出 2
不太明白你的意思,我的意思是,如果有数十个验证码等待输入,这个方法也行么?如果有多个线程里的mre同时在等待界面的激活信号,发出一个会不会所有线程都收到?
有没有给ManualResetEvent mre = new ManualResetEvent(false);设置个ID?
List<qqlist> thrList = new List<qqlist>();
public struct imglist
{
public Byte[] img;
public AutoResetEvent mre;
public bool New;
}thrList[0].mre.Set();谢谢avphoenixi给我的启发,我搞定了,我把验证码和mre都存在List里面,然后循环ListthrList[imgIndex].Mre.Set();