不读取的控制台应用程序

本文关键字:应用程序 控制台 读取 | 更新日期: 2023-09-27 18:31:26

我有一个控制台应用程序,它使用TcpListener侦听某个端口上的连接。我启动TcpListener但是当我打开程序时,控制台立即存在。如何在我仍在执行异步工作时避免它退出?

不读取的控制台应用程序

您可以使用ManualResetEvent来保持应用程序正常运行。 只需创建一个,等待它,并在您希望应用程序关闭时在异步代码中发出信号:

static void Main(string[] args)
{
    ManualResetEvent signal = new ManualResetEvent(false);
    //start asynchronous work
    //call signal.Set(); to close the application
    signal.WaitOne();
}

作为控制台应用中的最后一条语句,添加:

System.Threading.Thread.Sleep(System.Threading.Timeout.Infinite);