既然你提到的过程是你自己的应用程序,你可以直接退出应用程序而不是kil处理应用程序。你的问题更多的是“我怎样才能退出我的计划”。
首先,由于您运行的是无限循环,因此您的按钮可能看起来并不敏感。这样做的一个(坏)的方式是这样的:
private bool _exit = false; //member variable
while(true && !_exit)
{
Application.DoEvents();
}
Application.DoEvents
重要的是使你的应用程序继续听其他动作。然后,
private void btn_Click(object sender, EventArgs e)
{
_exit = true;
}
imo的理想方法是将从服务器获取数据的工作转移到后台进程。可能是这样的:
BackgroundWorker _backgroundWorker = new BackgroundWorker(); //member field
void Listen()
{
_backgroundWorker.WorkerSupportsCancellation = true;
_backgroundWorker.WorkerReportsProgress = true;
_backgroundWorker.DoWork += (sender, e) => { while(condition)//bla bla; }
_backgroundWorker.RunWorkerAsync();
}
然后在您的取消点击,
private void btn_Click(object sender, EventArgs e)
{
_backgroundWorker.CancelAsync();
}
你的意思是暂停一个线程? –
我想暂停线程并杀死它..我认为它会比直接查杀更快地退出此应用程序 – user1776177
杀死进程不是正确的方法。过程是你自己的过程吗?或者它是一个单独的应用程序? – nawfal