C# 使用线程池设置每个线程的执行时间,怎样设置结束时间?

 我来答
vwenye
推荐于2019-08-14 · TA获得超过4984个赞
知道大有可为答主
回答量:1510
采纳率:0%
帮助的人:828万
展开全部
改用thread来驱动这个方法
先建一个类下面的成员,来存放进程
List<Thread> pool = new List<Thread>();
在需要启动你的方法的时候建进城
Thread t = new Thread(new ThreadStart(getHtmlContent));
pool.Add(t);
t.Start();
给类加一个Timer
System.Timers.Timer timer = new Timer();
timer.Interval = 30000;
timer.Elasped += new EventHandler(this. timerElapsed);
timer.Enabled = true;
timer.Start();

然后增加timer的事件处理
private void timerElapsed(object sender, EvenArgs e)
{
//终止进程
foreach(Thread t in pool)
if(t != null && t.IsAlive)
if(!t.Join(5)) t.Abort();
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cufe小新
2018-05-29 · TA获得超过6114个赞
知道小有建树答主
回答量:83
采纳率:0%
帮助的人:1.6万
展开全部

先建一个类下面的成员,来存放进程。

List<Thread> pool = new List<Thread>();

Thread t = new Thread(new ThreadStart(getHtmlContent));

pool.Add(t);

t.Start();

给类加一个Timer。

System.Timers.Timer timer = new Timer();

timer.Interval = 30000;

timer.Elasped += new EventHandler(this. timerElapsed);

timer.Enabled = true;

timer.Start();

然后增加timer的事件处理。

private void timerElapsed(object sender, EvenArgs e)

{

//终止进程

foreach(Thread t in pool)

if(t != null && t.IsAlive)

if(!t.Join(5)) t.Abort();

}

C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。

C#看起来与Java有着惊人的相似;它包括了诸如单一继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司 .NET windows网络框架的主角。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
靠谱的星爷xy
2018-03-11 · TA获得超过2.5万个赞
知道小有建树答主
回答量:49
采纳率:100%
帮助的人:8137
展开全部

改用thread来驱动这个方法
先建一个类下面的成员,来存放进程
List<Thread> pool = new List<Thread>();
在需要启动你的方法的时候建进城
Thread t = new Thread(new ThreadStart(getHtmlContent));
pool.Add(t);
t.Start();
给类加一个Timer
System.Timers.Timer timer = new Timer();
timer.Interval = 30000;
timer.Elasped += new EventHandler(this. timerElapsed);
timer.Enabled = true;
timer.Start();

然后增加timer的事件处理
private void timerElapsed(object sender, EvenArgs e)
{
//终止进程
foreach(Thread t in pool)
if(t != null && t.IsAlive)
if(!t.Join(5)) t.Abort();
}

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
vwenye
2018-02-01 · TA获得超过4984个赞
知道大有可为答主
回答量:1510
采纳率:0%
帮助的人:828万
展开全部
改用thread来驱动这个方法
先建一个类下面的成员,来存放进程
List<Thread> pool = new List<Thread>();
在需要启动你的方法的时候建进城
Thread t = new Thread(new ThreadStart(getHtmlContent));
pool.Add(t);
t.Start();
给类加一个Timer
System.Timers.Timer timer = new Timer();
timer.Interval = 30000;
timer.Elasped += new EventHandler(this. timerElapsed);
timer.Enabled = true;
timer.Start();

然后增加timer的事件处理
private void timerElapsed(object sender, EvenArgs e)
{
//终止进程
foreach(Thread t in pool)
if(t != null && t.IsAlive)
if(!t.Join(5)) t.Abort();
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式