C#.net后台BLL的一个线程需要等待前台页面用户输入并返回结果才能继续执行,有什么好方法吗 c#.net线程 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 .net框架,为什么要开线程,什么功能? .net中慎用static因为声明为static之后,所有用户都用的同一个对象了 用ManualResetEvent或AutoResetEvent,在线程里需要等待输入的地方用WaitOne()阻塞线程,用户输入完成就Set() 类似于工作流引擎的东西,多个事件而且需要自动并发执行,所以我开了线程,如果不能static,那有什么好的方法没? page_load完成后让线程睡眠,用户点击后thread.start() 不是这样的,原本用户输入是一个流程的一个步骤,等用户输入了,我才能继续完成这个步骤,然后进入下一步骤,一个步骤为一个线程,现在线程已经开始,只是需要阻塞等结果,但是在BLL我获取不了页面上用户输入的东西,所以就在页面对应的xxxx.aspx.cs获取,处理了在返回个结果给BLL的某个全局static变量,然后线程一直在查询这个变量,找到有结果才跳出循环进入下一步,现在问题是要换种方法,求教 问题是线程不是在xxx.aspx.cs文件启动的,是在BLL的某个类里面启动的,而且要求是启动之后执行一些语句然后阻塞,等待用户输入再执行剩下语句,有办法么 谢谢,还是有疑问,项目是层次结构的,用户输入在USL层,BLL层的线程调用WaitOne()后,USL层有了结果怎么使用set()让线程继续执行?因为是多线程,每个线程都执行一个事件,有可能在同一时间存在多个事件都是需要阻塞等待用户输入的,怎么找出正确的线程并启动呢? 有多个线程的话,就用数组 ManualResetEvent[] man = new ManualResetEvent[n]; //你的代码段... //完成操作的线程就调用Set() WaitHandle.WaitAll(man); //等待输入的线程调用WaitAll 在CSDN下载资源... FCS校验码 C#里用SQLDMO备份数据时出错,请帮忙! 一个关于方法调用的怪问题!想法确实挺怪的 提取WEB页面遇charset=utf-8汉字成乱码如何解决!? 怎么查看guest账户状态 PowerDesigner中用object-oriented model自动生辰类代码的时候怎么添加应用 数字拼图 C# Web窗体对话框问题 请教高手:怎样打包WINDOW服务程序 C# winform程序加断点不停 求大神优化下时间段计费算法
因为声明为static之后,所有用户都用的同一个对象了
//你的代码段...
//完成操作的线程就调用Set() WaitHandle.WaitAll(man); //等待输入的线程调用WaitAll