Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Programming in C#: Exam 70-483 (MCSD) Guide

You're reading from   Programming in C#: Exam 70-483 (MCSD) Guide Learn basic to advanced concepts of C#, including C# 8, to pass Microsoft MCSD 70-483 exam

Arrow left icon
Product type Paperback
Published in Oct 2019
Publisher Packt
ISBN-13 9781789536577
Length 444 pages
Edition 1st Edition
Languages
Arrow right icon
Authors (2):
Arrow left icon
SrinivasMadhav Gorthi SrinivasMadhav Gorthi
Author Profile Icon SrinivasMadhav Gorthi
SrinivasMadhav Gorthi
Simaranjit Singh Bhalla Simaranjit Singh Bhalla
Author Profile Icon Simaranjit Singh Bhalla
Simaranjit Singh Bhalla
Arrow right icon
View More author details
Toc

Table of Contents (22) Chapters Close

Preface 1. Learning the Basics of C# FREE CHAPTER 2. Understanding Classes, Structures, and Interfaces 3. Understanding Object-Oriented Programming 4. Implementing Program Flow 5. Creating and Implementing Events and Callbacks 6. Managing and Implementing Multithreading 7. Implementing Exception Handling 8. Creating and Using Types in C# 9. Managing the Object Life Cycle 10. Find, Execute, and Create Types at Runtime Using Reflection 11. Validating Application Input 12. Performing Symmetric and Asymmetric Encryption 13. Managing Assemblies and Debugging Applications 14. Performing I/O Operations 15. Using LINQ Queries 16. Serialization, Deserialization, and Collections 17. Mock Test 1
18. Mock Test 2
19. Mock Test 3
20. Assessments 21. Other Books You May Enjoy

Synchronizing data in multithreading

Multiple threads can invoke the methods or properties of an object, which can make the state of an object invalid. It is possible to make conflicting changes regarding two or more threads on the same object. This makes it important to synchronize these calls, which will allow us to avoid such issues. When the members of a class are protected from conflicting changes, they are known to be thread-safe.

The CLR provides multiple ways in which we can synchronize access to the object instance and static members:

  • Synchronize code regions
  • Manual synchronization
  • Synchronize context
  • Thread-safe collection

By default, there is no synchronization for objects, which means any thread can access methods and properties at any time.

Synchronizing code regions allows us to synchronize blocks of code, methods, and static methods. However, synchronizing static...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime