我在Mac机器上使用.NET Core。
我的代码中的某个地方我想使用这段代码:
System.Threading.Thread.Sleep(100);
但它在Thread
命名空间中找不到System.Threading
。
怎么了?是不是Thread
可用于Mac,或者我遗失了什么?
答案 0 :(得分:12)
您是否已在project.json
添加了System.Threading.Thread个包裹?
{
"version": "1.0.0-*",
"compilationOptions": {
"emitEntryPoint": true
},
"dependencies": {
"NETStandard.Library": "1.0.0-rc2-23811",
"System.Threading.Thread": "4.0.0-beta-23516"
},
"frameworks": {
"dnxcore50": { }
}
}
然后我可以使用Thread.Sleep
:
using System;
using System.Threading;
namespace ConsoleApplication
{
public class Program
{
public static void Main(string[] args)
{
Console.WriteLine(DateTime.Now);
Thread.Sleep(2000);
Console.WriteLine("Hello World!");
Console.WriteLine(DateTime.Now);
}
}
}
答案 1 :(得分:6)
Mac不可用
Thread
吗?
尚未:https://github.com/dotnet/corefx/issues/2576
当前的System.Threading.Thread(和System.Threading.ThreadPool)包仅支持桌面和CoreCLR。
和:https://github.com/dotnet/corefx/issues/2576#issuecomment-187184341
我可以看到dotnet-core NuGet feed中最新的System.Threading.Thread包没有改变这张图片。