需求: 这个是调用微信公众平台碰到的一个问题, 现在有一个页面供别人访问,必须在5秒内给访问的人一个反馈,即便业务逻辑没有处理完成,也要反馈;
我的思路: 收到访问请求后,开启两个线程,一个线程负责处理业务逻辑,一个线程负责计时,如果时间快到了业务逻辑还没有处理完成,那么计时的线程关闭业务逻辑的线程,并执行请求的响应 ,如果顺利,那就是业务逻辑关闭计时线程,并执行请求的响应;多线程了解不够深,求指导代码,,另外,有别的解决办法也可以,谢谢~~多线程微信
我的思路: 收到访问请求后,开启两个线程,一个线程负责处理业务逻辑,一个线程负责计时,如果时间快到了业务逻辑还没有处理完成,那么计时的线程关闭业务逻辑的线程,并执行请求的响应 ,如果顺利,那就是业务逻辑关闭计时线程,并执行请求的响应;多线程了解不够深,求指导代码,,另外,有别的解决办法也可以,谢谢~~多线程微信
解决方案 »
- 有没有人用过7z的接口的,那个LZMA的几个参数改怎么填?
- DataGridView预览数据时显示有数据,程序运行后不显示数据
- winfrom 窗体第一次显示的位置
- 请问在WPF中如何动态添加图片radioButton按钮,并设置radiobutton选中与未选中显示的图片
- 如何在WEB应用程序中调用windows窗体????
- 我的笔记本为什么要按F1才能连接?
- 無法連接至 'http://www.zxb.com/',發生下列錯誤: 無法建立 Web 'http://www.zxb.com/'。 Web 伺服器可能未安裝 FrontPage Server Extension。
- 关于.net的插件问题?
- 如何用C#调用这么一个用C写的函数?并使用其功能呢?请举例说明!谢谢
- 字符比较的问题
- focus方法的用法,为什么没有加入focus方法调用的方法就不能起作用
- DataGridView的问题
不过 按照你的提示,我想到另外一个方法了 , 把负责处理业务逻辑的部分单独出去,页面调用业务逻辑的方法,设置4.5秒超时 ,如果超时页面自己回复,不然调用业务逻辑的结果回复 。
第一 不是需要定时刷新页面
第二 如果把业务方法独立成一个服务出去 ,实际上就是独立的另外的进程了,如果用这个方式,我考虑的是 新建web服务连接和断开服务连接本身就要消耗时间资源,本来处理的时间急很有限,不想浪费
这样把 只求多线程如何实现 。 不要说timmer了。。 求能看明白的 我水平太低了还是咋滴
public static void Main()
{
Thread newThread =
new Thread(new ThreadStart(Work));
newThread.Start(); TimeSpan waitTime = new TimeSpan(0, 0, 5); if(newThread.Join(waitTime))
{
Console.WriteLine("New thread terminated.");
}
else
{
Console.WriteLine("Join timed out.");
}
} static void Work()
{
//业务逻辑
Thread.Sleep(waitTime);
}
谢谢 测试可行关于 join 子线程 newthread 超时的时候,我看了下状态是 waitsleepjoin,是否需要自己把这个进程释放不 ?会不会一直占用资源啊?