小编Сер*_*гей的帖子

当用户单击控制台窗口时,代码停止执行

我有一个控制台应用程序,无需用户交互即可执行我的代码.如果用户在控制台窗口内有意或无意地点击,则所有执行都将停止.

这与从控制台窗口复制文本有关.应用程序再次开始执行的唯一方法是,如果用户选择文本,然后右键单击控制台窗口,将其复制到剪贴板.

要查看此操作,请创建一个控制台应用程序并添加以下代码.

class Program
{
    static void Main(string[] args)
    {
        var task = Task.Run(async () =>
        {
            int i = 0;
            while (true)
            {
                Console.WriteLine(i++);
                await Task.Delay(1000);
            }
        });
        Console.ReadLine();
    }
}
Run Code Online (Sandbox Code Playgroud)

单击控制台窗口时,任务线程停止执行.这根本不是理想的行为,我想在我的控制台应用程序中防止这种情况发生.

我怎么能阻止这个?据我所知,控制台窗口上的所有属性/事件都与控制此行为无关.

如你所见,当我在窗口内点击时出现光标.当我按任意键 - 光标消失,应用程序继续工作 暂停的应用程序

c# console-application

11
推荐指数
2
解决办法
4294
查看次数

标签 统计

c# ×1

console-application ×1