1 - Introduction to Threading
Introduction to processes, threads, STAs, and MDAs
This is an introduction to creating, using, and managing threads. Threads operations include starting, suspending, and/or terminating a thread.
2 - The Characteristics of a Thread
When it comes to a thread, many aspects are fundamental to it
A thread includes many details such as its name, its identity, its "Alive" status, its scheduling scheme, its importance or priority, its "Background" status.
3 - Executing a Thread
After creating or setting up a thread, you can execute it.
Many techniques are available to use a thread. These include passing on object to a thread, blocking a thread, involving a thread in object-oriented programming, applying exception handling.
4 - Introduction to Lock Threading
Both the operating systems and the C# language provide fundamental support for threads
Introduction to transaction locking (including thread atomicity, locking, nesting, etc). When it comes to managing threads, routine operations include entering, monitoring, and exiting a thread operation.
5 - Operations on Lock Threading
There are various techniques to use the threading tools available in C# and the .NET Framework
Thread management involves many lock operations (synchronizing, requesting, checking the availability). Additional operations include interlocking some threads: incrementing or decrementing an integer, adding two integers, exchanging values, comparing and exchanging two values.
6 - Introduction to Parallelized Tasks
A general introduction to tasks as operations that must be performed with a concern for memory
As one of thread topics, tasks are the central point of assynchronous operations. Before addressing asynchrony, it is important to define a task, how to create one, and how to start or run it.
7 - The Tasks of an Object
Task topics include a task as a type, as an object, as an argument
As an object in its own right, a task can be created, it can be returned from a function or a method, it can be passed as an argument. In other words, a class is like an instance of a class.
8 - Awaiting an Asynchronous Operation
Asynchronous Operations, keywords (asyn, await), and concepts (tuple, structure, interface).
To make asynchronous programming easy yet efficient, the C# language provides such keywords as asyn and await. Still, regular concepts of C# object-oriented programming can be involved in asynchrouny.