NetCore监听Ctrl+C阻止控制台退出

本文最后更新于:2021年9月29日 下午

阻止控制台程序退出

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
public class Program
{
private static readonly ManualResetEvent _shutdownBlock = new ManualResetEvent(false);

static void Main(string[] args)
{
Console.WriteLine("Hello World!");

Console.CancelKeyPress += Console_CancelKeyPress;
AppDomain.CurrentDomain.ProcessExit += (sender, eventArgs) =>
{
//等待退出信号触发
_shutdownBlock.WaitOne();
};
}

//Ctrl+C 退出程序
private static void Console_CancelKeyPress(object sender, ConsoleCancelEventArgs e)
{
e.Cancel = true;
_shutdownBlock.Set();
}
}

https://www.cnblogs.com/imiyu/p/11102483.html


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!