void OnProcessingCommand(BasicCommandWithThreadId sender, ResponseCompleteEvent e) { Console.WriteLine("OnProcessingCommand Id:{0} T:{1}- IsThreadPool {2}", e.Id, Thread.CurrentThread.ManagedThreadId, Thread.CurrentThread.IsThreadPoolThread); }
static void Main(string[] args) { var myParam = new MyParam { Id = 1, }; var basicCommandWithThreadId = new BasicCommandWithThreadId(); var actions = System.Linq.Enumerable.Range(0, 20).Select(i => new { Id = i, ActionToInvoke = new Action(() => basicCommandWithThreadId.SendCommand(new MyParam { Id = i, })) }); foreach (var a in actions) { Console.WriteLine("Starting {0}", a.Id); a.ActionToInvoke(); } Console.ReadLine(); }