在过去的几个星期里,我一直在看Tasks,我真的很努力。我挣扎的一件事是创建一个没有返回类型的等待方法。什么是任务的回报?
现在,我们现在的非awaitable方法的工作是这样的:
//This is a method with a return type:
private string methodWithReturn()
{
return "This is a string return type";
}
//This is a method without a return type
private void methodWithoutReturn()
{
//Some random code that has no return
}
现在,当它涉及到的任务,它很复杂。有三种类型:void
,Task
和Task<T>
void
根本不推荐,所以我留下了两个任务。这是问题。我想有没有返回类型的任务,这是一个代码:
private Task taskTypeMethod()
{
//some random code
}
这里的问题是,它仍然发出警告说,“并不是所有的代码路径返回一个值”。我是否正确理解任务或者我在这里做错了什么?
我被告知要在其之前添加async
,但这需要我在代码块内使用await
关键字,我不会使用它。
如果你不使用'async' *和*你不会返回一个活的'Task',为什么有一个'Task'作为返回类型呢? – 2014-09-10 18:01:33
你可以显示'taskTypeMethod'里面有什么吗?这听起来像你在做一些同步内部。那么为什么还要回来'Task'? – 2014-09-10 18:06:23
您确实无法正确理解任务。多读一点关于它们的内容并遵循一些教程可能会帮助你。 – 2014-09-10 18:08:00