And*_*ans 4 .net c# console backgroundworker winforms
我有一个控制台应用程序,它利用BackgroundWorker对象,并希望使用Console.WriteLine(fooBar)测试我的输出.但是,该应用程序在应用程序执行Console.WriteLine命令时退出.
这是一个淡化版本,说明了我想做的事情:
protected static void bWorker_DoWork(object sender, DoWorkEventArgs e)
{
for (int i = startId; i <= endId; i++)
{
Console.WriteLine(i.ToString());
Thread.Sleep(1000);
}
}
Run Code Online (Sandbox Code Playgroud)
任何想法为什么应用程序似乎退出这样?
应用程序退出是因为它实际上完成了执行并且没有更多的工作要做;-)一旦你安排后台工作程序并启动线程来做它的事情,你必须告诉主线程停止并等待一件事或另一个.执行此操作的一种非常常见的方法(通常用于测试/示例代码)是简单地Console.ReadKey();将main作为main方法中的最后一行代码.这将导致您的应用程序等到您在退出流程之前按下某个键.
| 归档时间: |
|
| 查看次数: |
3134 次 |
| 最近记录: |