using System.Threading.Tasks;
public async static void Main()
var scheduler = new ConcurrentExclusiveSchedulerPair();
var tasks = Enumerable.Range(0, 100).Select(i =>
TaskCreationOptions.DenyChildAttach,
scheduler.ExclusiveScheduler)
await Task.WhenAll(tasks);
static void DoSomething(object obj)
Console.WriteLine("{0}: {1}", (int)obj, Thread.CurrentThread.ManagedThreadId);