using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace TaskStart
{
class Program
{
private static void PrintMessage()
{
Console.WriteLine("Hello Task library!");
}
static void Main(string[] args)
{
//method 1
//Task.Factory.StartNew(() => { Console.WriteLine("Hello Task library!");});
//method 2
//Task task = new Task(new Action(PrintMessage));
//task.Start();
//method3
Task task = new Task(delegate { PrintMessage(); });
task.Start();
}
}
}
Run Code Online (Sandbox Code Playgroud)
我想让我的控制台应用程序打印消息Hello Task library!.我目前正在使用method 3下面.出于某种原因,Press any key to continue当我按下Ctrl + F5VS2015 时,应用程序显示一个空白屏幕,并显示消息.
为什么我的信息没有打印出来.
这是因为您无法wait完成任务.尝试添加task.Wait()到方法的末尾并查看应显示的结果.
更新:如果您使用的是Visual Studio 2017 Update 15.3或更高版本以及C#7.1,则现在支持async Main.
您可以按如下方式修改代码:
class Program
{
private static void PrintMessage()
{
Console.WriteLine("Hello Task library!");
}
static async Task Main()
{
var task = new Task(PrintMessage);
task.Start();
await task;
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
384 次 |
| 最近记录: |