【发布时间】:2013-10-23 06:50:57
【问题描述】:
我有一个启动多个不同线程的控制台应用程序。主控制台应用程序将轮询服务并根据响应使用 BackgroundWorker 类生成一个或多个后台线程。目前,这些线程中的每一个都对打开的唯一默认控制台窗口执行 console.writeline,就像通常对控制台应用程序所做的那样。这使得跟踪任何一个线程的进度变得太混乱了。
我希望能够生成一个单独的窗口,每个窗口都将自己的 console.writeline() 写入自己的窗口。完成后,主控制台应用程序窗口将关闭生成的控制台窗口,然后在需要时再次启动它。
我在网上找不到任何有用的东西。我可能没有在搜索中使用正确的关键字。请问这方面有什么帮助吗?
【问题讨论】:
-
如果这是 WPF,我将拥有每个窗口,每个窗口都启动自己的 BackgroundWorker。
-
我没有任何起点来创建新窗口作为后台工作进程的一部分。我现在拥有的代码在同一个窗口中显示了所有内容,并且可以正常工作。我正在尝试添加这个新功能,所以目前还没有任何代码..
-
@blam:你的意思是在 MDI 场景中?
-
看来不可能:
A process can be associated with only one consolemsdn.microsoft.com/en-us/library/windows/desktop/… 将线程ID添加到所有输出行并过滤输出以查看每个线程的结果。 -
尝试使用彩色输出来控制来自不同线程的控制台。有
Console.ForegroundColor和Console.BackgroundColor属性。
标签: c# .net .net-4.0 console-application