如何在新的命令窗口的新线程中运行方法?

时间:2019-03-21 11:07:32

标签: c# multithreading methods command-line-interface

我正在尝试实现一个软件,该软件可以从机床流式传输数据并将其返回的数据保存为XML。 我目前有一个GUI驱动的版本,该版本成功地创建了以下行的侦听器 Task.Factory.StartNew(() => InitiateEventListener()); // Start the listener

我正在创建此软件的CLI版本,因为它需要在某些机器上无头运行,并且希望此时能够出现第二个窗口以显示此方法驱动的所有输出(该方法继续运行,直到由于通信故障,手动停止或另一台设备给出的流结束消息而关闭连接为止。) 不幸的是,仅在单独的线程上运行该方法对我没有帮助,因为我的UI不会返回用户输入,而是窗口聚焦于新线程。 如果可以执行此操作,则可以从CLI中使用不同的搜索参数启动多个侦听器。

1 个答案:

答案 0 :(得分:0)

不要尝试在单独的控制台中运行它。使用“ curses”创建基于控制台的UI并将两者分开。

该库将允许您创建一些基于控制台的UI,允许两个单独的“窗口”进行输出。 https://sourceforge.net/projects/curses-sharp/

那是> I <会做的。