【C#多线程】C#多线程 Thread 开发基础
引用
using System; using System.Threading;
多线程代码
Thread mainthread = new Thread(ExecuteThread); mainthread.IsBackground = true; mainthread.Start();
线程与进程的异同
地址空间:进程拥有自己独立的内存地址空间;而线程共享进程的地址空间;换句话说就是进程间彼此是完全隔绝的,同一进程的所有线程共享(堆heap)内存;
资源拥有:进程是资源分配和拥有的单位,同一进程内的线程共享进程的资源;
系统粒度:进程是分配资源的基本单位,而线程则是系统(处理器)调度的基本单位;
执行过程:每个独立的进程都有一个程序运行的入口、顺序执行序列和程序的出口;线程不能独立执行,必须依存于进程中;
系统开销:创建或撤销进程时,系统都要为之分配或回收资源(如内存空间、IO设备),进程间的切换也要消耗远大于线程切换的开销。
二者均可并发执行。