c#基础知识篇-创建线程的方式
//方式一*(手动创建) Thread thread = new Thread(() => { Console.WriteLine("当前线程ID:" + Thread.CurrentThread.ManagedThreadId); }); thread.Start(); //方式二(Task.Run是Task.Factory.StartNew简写形式) Task.Run(() => { Console.WriteLine("当前线程ID:" + Thread.CurrentThread.ManagedThreadId); }); Task.Factory.StartNew(() => { Console.WriteLine("当前线程ID:" + Thread.CurrentThread.ManagedThreadId); }); //方式三(线程池创建) ThreadPool.QueueUserWorkItem((x) => { Console.WriteLine("当前线程ID:" + Thread.CurrentThread.ManagedThreadId); }); //方式四(异步BeginInvoke方式在.netcore中不支持) Action action = () => { Console.WriteLine("当前线程ID:" + Thread.CurrentThread.ManagedThreadId); }; action.BeginInvoke(null,null); //方式五(并行) Parallel.For(0, 10, p => { Thread.Sleep(1000); Console.WriteLine("当前线程ID:" + Thread.CurrentThread.ManagedThreadId); }); Console.WriteLine("当前主线程ID:" + Thread.CurrentThread.ManagedThreadId);
人生如逆旅
我亦是行人