I am looking into a MultiThreading c# tutorial and I have not understood well the entire picture regarding Processes and Threads. I have understood that Threads are within the process but it is not clear what is exactly a process ? Is an instance of a class, a particular method, and entire assembly file, what is it ? This doubt coming out when i have seen the difference between Lock and Mutex. The definition of Mutex Class is ...."A synchronization primitive that can also be used for interprocess synchronization..." and later on .... Mutex is a synchronization primitive that grants exclusive access to the shared resource to only one thread, This confuse me a bit? Am i wrong is stating than Mutex synchronizes threads from different Processes ?
Regarding ThreadPool the definition is..."A thread pool is a collection of threads that can be used to perform several tasks in the background...." this collection of threads are from same process or threads of different processes?