Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ WithDefaults()

QuerySettings System.Linq.Parallel.QuerySettings.WithDefaults ( )
inlinepackage

Definition at line 139 of file QuerySettings.cs.

140 {
141 QuerySettings result = this;
142 if (result.TaskScheduler == null)
143 {
144 result.TaskScheduler = TaskScheduler.Default;
145 }
146 if (!result.DegreeOfParallelism.HasValue)
147 {
148 result.DegreeOfParallelism = Scheduling.GetDefaultDegreeOfParallelism();
149 }
150 if (!result.ExecutionMode.HasValue)
151 {
152 result.ExecutionMode = ParallelExecutionMode.Default;
153 }
154 if (!result.MergeOptions.HasValue)
155 {
156 result.MergeOptions = ParallelMergeOptions.Default;
157 }
158 if (result.MergeOptions == ParallelMergeOptions.Default)
159 {
160 result.MergeOptions = ParallelMergeOptions.AutoBuffered;
161 }
162 return result;
163 }
QuerySettings(TaskScheduler taskScheduler, int? degreeOfParallelism, CancellationToken externalCancellationToken, ParallelExecutionMode? executionMode, ParallelMergeOptions? mergeOptions)

References System.Threading.Tasks.TaskScheduler.Default, System.Linq.Parallel.QuerySettings.DegreeOfParallelism, System.Linq.Parallel.QuerySettings.ExecutionMode, System.Linq.Parallel.Scheduling.GetDefaultDegreeOfParallelism(), System.Linq.Parallel.QuerySettings.MergeOptions, and System.Linq.Parallel.QuerySettings.TaskScheduler.