我正在研究一个MultiThreading c#教程,我还没有完全理解有关进程和线程的整个图片。我已经明白线程在这个过程中,但不清楚什么是一个过程?是类的实例,特定方法和整个程序集文件,它是什么? 当我看到Lock和Mutex之间的区别时,这个疑问就出现了。 Mutex类的定义是......“一个同步原语,也可以用于进程间同步......”以及后来.... Mutex是一个同步原语,它只允许对一个线程的共享资源进行独占访问,这让我有点困惑?我错误的是说Mutex会同步来自不同进程的线程吗?
关于ThreadPool,定义是......“线程池是一组线程,可用于在后台执行多个任务....”这个线程集合来自不同进程的相同进程或线程?
答案 0 :(得分:9)
最后,不是直接问,而是:
答案 1 :(得分:1)
进程是程序的内存实例。如果您多次运行记事本,您将在任务管理器下的进程中看到Notepad.exe的多个实例。
线程是一系列指令。对于单个进程,可以并行执行多个线程。例如,在MS Word中,不同的线程可以负责拼写/语法检查,自动保存,...以及处理UI。
答案 2 :(得分:0)
进程是一个操作系统级别的存储桶,应用程序将驻留在该存储桶中。
线程将包含在您的进程中,但主要由操作系统管理。
请在此处阅读:http://msdn.microsoft.com/en-us/library/windows/desktop/ms684841(v=vs.85).aspx