Synchronization Expert

part of the Async Expert online course created by Dotnetos

A path to a correct and effective understanding of Synchronization in .NET


44€ | 49$ | 1090 Kč | 199 zł

(+ VAT if applies)

Course description

How to synchronize the work of threads that share common memory to avoid deadlocks? Is shared memory a problem or a solution in this case? Or maybe you don't know how to use Lock, Monitor or Semaphore? In response to the above questions, we have prepared the Synchronization Expert course.

Thanks to the Synchronization Expert course, you will learn how to use synchronization in everyday work. In particular we focus on two main divisions, which are Exclusive locking and Non-exclusive locking. Additionally, we will explain how to use Signaling safely. Finally, we'll touch on the topic of Asynchronous primitives supporting synchronization. In order to consolidate knowledge as much as possible, we have prepared special demos where we show step by step how to use the content presented during the course. Moreover, at the end of the course, we have prepared homework that allows you to test your knowledge in practice.

The course is an integral part of Async Expert course, which mainly covers topics related to asynchronous programming. However, it is impossible to fully understand asynchronicity without knowing the concept of synchronization and conversely.

50% of the revenues from the sale of the Synchronization Expert course on March 21-25th will be donated to the Polish Humanitarian Action to help those in need all over the world.


44€ | 49$ | 1090 Kč | 199 zł

(+ VAT if applies)

Course agenda



  1. Exclusive locking
  2. Demo: decompiling lock
  3. Demo: non-blocking usage of Monitor.TryEnter
  4. Semaphore and SemaphoreSlim
  5. Demo: task throttling with Task and SemaphoreSlim
  6. ReaderWriterLock
  7. Demo: Building custom string pool with ReaderWriterLock
  8. Wait handles
  9. CountdownEvent
  10. Barrier
  11. Asynchronous primitives
  12. Demo: AsyncLock implementation
  13. Homework

What do I get?

🌶 Access to Synchronization Expert on-line course - Access to Synchronization Expert on-line course at an attractive price

🌶 Certificate of completion - As with all our courses, you will receive a Certificate of Completion upon completion.

🌶 Access to the course platform - The access to the platform as well as to our dedicated discussion page, which allows you to contact the instructor and other course participants.

🌶 Access to the repository - Besides the access to the recordings, ability to contact others you receive the access to repository that includes code examples.


44€ | 49$ | 1090 Kč | 199 zł

(+ VAT if applies)

Course authors

Szymon Kulec

Dotnetos co-founder, architect, speaker

I like to incorporate an unique combination of Software Architecture and Performance Engineering. With broad knowledge of modern architecture principles, distributed systems, as well as deep understanding of performance principles I make every allocation fear for its existence. I never allocate before noon.

Konrad Kokosa

Dotnetos co-founder, Microsoft MVP, author, speaker

I’m a Pro .NET Memory Management book author and independent consultant, blogger, speaker and a professional Tweeter [see: Twitter]. I share my passion as a .NET trainer, especially in the performance and app diagnosis field.

Łukasz Pyrzyk

Dotnetos co-founder, Microsoft MVP, author, speaker

I’m a software developer interested in performance topics, microservices and optimizations. Moreover, I’m a speaker (more than a blogger) and an active Twitter user.

Questions and answers

🌶 I bought the Async Expert course, is the Synchronization Expert course a new course or part of the Async Expert course?

The Synchronization Expert course is a part of an existing course - Async Expert.

🌶 If I purchase the Synchronization Expert course, can I purchase the Async Expert course at a lower price?

Yes, if you decide to purchase the Synchronization Expert course, you will receive a special discount coupon for the purchase of the Async Expert course.

🌶 Which programming language will be used in examples?

All the examples as well as all our work will be done in C#.

🌶 Which version of .NET will be used in samples?

We will work on the LTS version of .NET Core 3.1 showing differences with .NET Framework when needed.

🌶 When does the course begin and for how long does it last?

All the course material is available now, without a time limit. Links, password and login will be passed immediately after purchase.

🌶 What is the format of that course?

It is a video course. Besides the recordings, you'll gain access to our Community platform where you can communicate with the instructor and other participants.

🌶 How long will I have the access to the course?

You will receive life-long access to that edition of the course, including its updates.

🌶 What if I would not be satisfied with the course?

If you watch less than 30% of the course and decide that the course is not for you, you will receive a refund. You have 30 days to decide. Just write to contact[at], and we will return you 100% value.

🌶 Will I receive all the course material at once?

Yes. All material is available immediately.

🌶 Will I receive an invoice?

Yes, you will receive a VAT invoice with your purchase. It will be sent to you within few days to the e-mail address provided during the order.

🌶 How can I pay for that course?

Payment is done with the use of our on-line shop. Each type of payment supported by it is ok for us. Additionally, it is possible to automatically generate a ”pro forma” invoice via on-line shop.

🌶 Can I pay later, on installments, etc.?

Unfortunately it’s not possible to pay on installments but you can choose a “pro forma” invoice that will allow you to pay later by bank transfer.

🌶 How many people can access one course account?

The access is given to one person, using an address provided during the purchase. If you are interested in buying more accesses please contact us using contact[at] e-mail address.

🌶 What if I have a problem with something or something is unclear?

Write to us with that e-mail address: contact[at]


If you think that Synchronization Expert is a nice dose of knowledge, share it with friends. Just use one of the buttons below!
Thank you!