我注意到 .NET Core 3Task
无法在我的基于 Ubuntu 18.04 的虚拟服务器上运行(提供程序是 Strato.de 和 HostEurope.de)。
这是一个非常基本的测试程序:
static void Main(string[] args) {
Console.WriteLine("Hello");
Task.Delay(2000).ContinueWith(_ => Console.WriteLine("Fire"));
Thread.Sleep(5000);
Console.WriteLine("Exit");
}
应用程序应"Hello"
立即打印,然后在 2 秒后打印,"Fire"
最后打印"Exit"
。这在我的 Windows 计算机和我的 Ubuntu 18.04 计算机上都可以正常工作。
但是当我在虚拟服务器上运行代码时,第二条消息永远不会打印出来。也Threading.Timer
有Timers.Timer
同样的问题,他们几乎从不开火(有时,但很少,他们会)。
编辑:两个虚拟服务器都在OpenVZ上运行,至少这是这么systemd-detect-virt
说的。我相应地更改了问题的标题。
知道问题可能是什么吗?