class · System.Threading.Tasks

Task<T>

public class Task<T> : Task

A task with a value: what an async function that returns one gives.

Kind
class
Namespace
System.Threading.Tasks
Assembly
System.Core
Access
public
Source file
Tasks.ant

Type parameters

NameConstraints
Tany type

Inheritance

Base classes
Any Task Task<T>

Properties

T Result { get; }
#

read-only

The value, once done (runs the scheduler until then; throws the error if it failed).

Methods

SetResult(T value)
#

Done with value.

GetResult() : T
#

What await gives once the task has finished: its value (or its error, thrown).

static FromResult(T value) : Task<T>
#

static

A task done with value.

Fields

T result
#

inherited

Inherited members (24)

Source

Task<T> as Antril, decompiled from its Larva HIR.

System.Threading.Tasks.Task`1.ant
// System.Threading.Tasks.Task — System.Core (decompiled from Larva HIR)

into namespace System.Threading.Tasks
{
	/// A task with a value: what an async function that returns one gives.
	public class Task<T> : Task
	{
		inherited:
			T result;

		public:
			/// Done with `value`.
			SetResult(T value)
			{
				result = value;
				Complete();
			}

			/// What `await` gives once the task has finished: its value (or its error, thrown).
			GetResult() : T
			{
				Check();
				return result;
			}

			/// A task done with `value`.
			static FromResult(T value) : Task<T>
			{
				Task<T> task = new Task<T>();
				task.SetResult(value);
				return task;
			}

			/// The value, once done (runs the scheduler until then; throws the error if it failed).
			T Result
			{
				get
				{
					Wait();
					return result;
				}
			}
	}
}
Esc