TaskCreationOptions TaskCreationOptions TaskCreationOptions TaskCreationOptions Enum

정의

작업을 만들고 실행하기 위한 선택적 동작을 제어하는 플래그를 지정합니다.Specifies flags that control optional behavior for the creation and execution of tasks.

이 열거형에는 멤버 값의 비트 조합을 허용하는 FlagsAttribute 특성이 있습니다.

public enum class TaskCreationOptions
[System.Flags]
[System.Serializable]
public enum TaskCreationOptions
type TaskCreationOptions = 
Public Enum TaskCreationOptions
상속
TaskCreationOptionsTaskCreationOptionsTaskCreationOptionsTaskCreationOptions
특성

필드

AttachedToParent AttachedToParent AttachedToParent AttachedToParent 4

작업이 작업 계층 구조의 부모에 연결되도록 지정합니다.Specifies that a task is attached to a parent in the task hierarchy. 기본적으로 자식 작업(즉, 외부 작업이 만든 내부 작업)은 부모와 독립적으로 실행됩니다.By default, a child task (that is, an inner task created by an outer task) executes independently of its parent. AttachedToParent 옵션을 사용할 수 있어 부모와 자식 작업은 동기화됩니다.You can use the AttachedToParent option so that the parent and child tasks are synchronized.

부모 작업이 DenyChildAttach 옵션을 사용하여 구성된 경우 자식 작업의 AttachedToParent 옵션은 영향을 받지 않으며, 자식 작업은 분리된 자식 작업으로 실행됩니다.Note that if a parent task is configured with the DenyChildAttach option, the AttachedToParent option in the child task has no effect, and the child task will execute as a detached child task.

자세한 내용은 연결된 자식 작업과 분리된 자식 작업을 참조하세요.For more information, see Attached and Detached Child Tasks.

DenyChildAttach DenyChildAttach DenyChildAttach DenyChildAttach 8

연결된 자식 작업으로 실행하려는 자식 작업(즉 AttachedToParent 옵션으로 만듦)은 부모 작업에 연결할 수 없고 대신 분리된 자식 작업으로 실행되도록 지정합니다.Specifies that any child task that attempts to execute as an attached child task (that is, it is created with the AttachedToParent option) will not be able to attach to the parent task and will execute instead as a detached child task. 자세한 내용은 연결된 자식 작업과 분리된 자식 작업을 참조하세요.For more information, see Attached and Detached Child Tasks.

HideScheduler HideScheduler HideScheduler HideScheduler 16

주변 스케줄러가 만든 작업에서 현재 스케줄러로 나타나지 않도록 합니다.Prevents the ambient scheduler from being seen as the current scheduler in the created task. 이는 만들어진 작업에서 수행되는 StartNew 또는 ContinueWith와 같은 작업이 Default를 현재 스케줄러로 표시함을 의미합니다.This means that operations like StartNew or ContinueWith that are performed in the created task will see Default as the current scheduler.

LongRunning LongRunning LongRunning LongRunning 2

세분화된 시스템보다 적고 폭 넓은 구성 요소가 개입하는 장기 실행되고 정교하지 않은 작업이 되도록 지정합니다.Specifies that a task will be a long-running, coarse-grained operation involving fewer, larger components than fine-grained systems. 초과 구독을 보장할 수 있는 TaskScheduler에 대한 힌트를 제공합니다.It provides a hint to the TaskScheduler that oversubscription may be warranted. 초과 구독을 사용하면 사용 가능한 하드웨어 수보다 많은 스레드를 만들 수 있습니다.Oversubscription lets you create more threads than the available number of hardware threads. 또한 로컬 스레드 풀 큐의 다른 스레드나 작업 항목의 정방향 진행을 차단하지 않도록 작업에 추가 스레드가 필요할 수도 있다는 힌트를 작업 스케줄러에 제공합니다.It also provides a hint to the task scheduler that an additional thread might be required for the task so that it does not block the forward progress of other threads or work items on the local thread-pool queue.

None None None None 0

기본 동작이 사용되도록 지정합니다.Specifies that the default behavior should be used.

PreferFairness PreferFairness PreferFairness PreferFairness 1

가능한 한 공정한 방식, 즉 일찍 예약된 작업은 일찍 실행되고 나중에 예약된 작업은 나중에 실행될 수 있는 방식으로 작업을 예약하는 TaskScheduler에 대한 힌트입니다.A hint to a TaskScheduler to schedule a task in as fair a manner as possible, meaning that tasks scheduled sooner will be more likely to be run sooner, and tasks scheduled later will be more likely to be run later.

RunContinuationsAsynchronously RunContinuationsAsynchronously RunContinuationsAsynchronously RunContinuationsAsynchronously 64

비동기 방식으로 실행될 현재 작업에 추가된 연속을 적용합니다.Forces continuations added to the current task to be executed asynchronously.

RunContinuationsAsynchronously 멤버는 .NET Framework 4.6.NET Framework 4.6부터 TaskCreationOptions 열거형에서 사용할 수 있습니다.Note that the RunContinuationsAsynchronously member is available in the TaskCreationOptions enumeration starting with the .NET Framework 4.6.NET Framework 4.6.

설명

TaskCreationOptions 다음 메서드를 사용 하 여 열거형을 사용 합니다.The TaskCreationOptions enumeration is used with the following methods:

  • TaskFactoryTaskFactory<TResult> 사용 하는 생성자를 creationOptions 매개 변수를 작업 팩터리에서 생성 하는 작업에 대 한 기본 옵션을 지정 합니다.The TaskFactory and TaskFactory<TResult> constructors with a creationOptions parameter, to specify the default options for tasks created by the task factory.

  • Task 하 고 Task<TResult> 사용 하는 생성자를 creationOptions 매개 변수를 작업의 동작을 사용자 지정 하는 데 사용 하 여 옵션을 지정 합니다.The Task and Task<TResult> constructors with a creationOptions parameter, to specify the options used to customize the task's behavior.

  • 합니다 StartNewStartNew 메서드를 creationOptions 매개 변수를 작업의 동작을 사용자 지정 하는 데 사용 하 여 옵션을 지정 합니다.The StartNew and StartNew methods with a creationOptions parameter, to specify the options used to customize the task's behavior.

  • 합니다 FromAsyncFromAsync 메서드를 creationOptions 매개 변수를 지정 된 경우 end 메서드를 실행 하는 작업의 동작을 사용자 지정 하는 데 사용 하 여 옵션을 지정 IAsyncResult 완료 합니다.The FromAsync and FromAsync methods with a creationOptions parameter, to specify the options used to customize the behavior of the task that executes an end method when a specified IAsyncResult completes.

  • 합니다 TaskCompletionSource<TResult> 사용 하는 생성자를 creationOptions 매개 변수는 기본 작업의 동작을 사용자 지정 하는 데 사용 하 여 옵션을 지정 합니다.The TaskCompletionSource<TResult> constructors with a creationOptions parameter, to specify the options used to customize the behavior of the underlying task.

적용 대상

추가 정보