Lesson 3 - Monitors, thread priority, exceptions and more in C# .NET
In the previous lesson, Threads in C# .NET - Sleep, Join, and lock, we learned how to block threads and lock them, so we can use shared variables across different threads. In today's C# .NET tutorial, we're going to look at locks in more detail, learn how to pass parameters to a thread and change its priority along with the priority of the whole process.
Monitors and Mutexes
The lock
construct, mentioned last time, is actually just
syntactic sugar. It generates code using the Monitor
class. This
class allows us to lock a thread using the static Enter()
method
and unlock it using the Exit()
method. This code:
class AtmSafe { private object myLock = new object(); // ... private void Withdraw100() { lock (myLock) { // ... } } }
is, in fact, translated to:
...End of the preview...
Continue further
You've come here and that's great! We believe that the first lessons showed you something new and useful
Do you want to continue the course? Go to the premium section.
Buy this course
This article is licensed: Premium, by buying this article, you agree with the terms of use.
- Unlimited and permanent access to individual lessons.
- High quality IT knowledge.
- Skills to help you get your dream and well-paid job.
Article description
Requested article covers this content:
We'll explain Monitors and Mutexes, non-atomic operations, the Interlocked class, and thread priority. We'll pass thread parameters and catch exceptions.
You gain credits by supporting our network. This is done by sending a helpful amount of money to support the site, or by creating content for the network.