Prøve GULL - Gratis

Threads, Asynchrony, Parallelism, and Concurrency in C#

CODE Magazine

|

November - December 2024

The concepts of process, thread, and task are fundamental to understanding the working of an operating system. You should have a good understanding of threads and how they work to learn asynchrony, parallelism, and concurrency. This article discusses the concepts related to these concepts in detail with relevant code examples wherever appropriate.

- Joydip Kanjilal

Threads, Asynchrony, Parallelism, and Concurrency in C#

If you’re to work with the code examples discussed in this article, you need the following installed in your system:

• Visual Studio 2022

• .NET 9.0

• ASP.NET 9.0 Runtime

If you don’t already have Visual Studio 2022 installed on your computer, you can download it from here: https://visualstudio.microsoft.​com/downloads/.

I’ll start by showing you the basic concepts and then explore how you can program against each of them.

Overview of Threads, Multithreading, and Multitasking

In this section, I’ll examine threads, multithreading, multitasking, multiprocessing, and other related concepts. Before I delve deeply into these concepts, let’s understand what resources are in the context of an operating system.

Resources

Resources, in an operating system (OS), are components required by a process or thread to function. Typical examples of resources include hardware components, such as a central processing unit (CPU) time, memory space, input/output (I/O) devices (printers, disk drives), and files managed by the operating system to ensure that processes have access to these resources in a controlled and efficient manner. It’s extremely important for an operating system to apply proper algorithms and strategies to manage and control the allocation, scheduling, and release of resources to ensure seamless functioning of operations.

From the operating system’s perspective, there are two types of resources: preemptive resources and non-preemptive resources.

CODE Magazine

Denne historien er fra November - December 2024-utgaven av CODE Magazine.

Abonner på Magzter GOLD for å få tilgang til tusenvis av kuraterte premiumhistorier og over 9000 magasiner og aviser.

Allerede abonnent?

FLERE HISTORIER FRA CODE Magazine

CODE Magazine

Identifying and Reducing Test Case Combinatorial Explosions with Python's Abstract Syntax Tree (AST) and Pytest Framework

Test matrix explosions are a growing challenge in modern software testing, especially when using parameterized tests in machine learning pipelines.

time to read

3 mins

July - August 2025

CODE Magazine

CODE Magazine

The New Features and Enhancements in .NET 10 H

By the end of this year, Microsoft plans to release .NET 10 (in November 2025). Incidentally, it will be a Long-Term Support (LTS) release. The preview version of .NET 10 is already available.

time to read

2 mins

July - August 2025

CODE Magazine

Unlocking Angular Performance: Optimization Techniques

Optimizing Angular applications for speed and efficiency requires a deliberate strategy.

time to read

2 mins

July - August 2025

CODE Magazine

Git Branching Strategies

Sometimes when we reach for the stars, we forget to keep our feet on the ground. Whenever I sit down to write these articles, I wonder what I should write about.

time to read

6 mins

July - August 2025

CODE Magazine

Sending Email with SendGrid

C# provides several ways to send email. Maybe you've used the SMTPClient class or perhaps you've used the Mailkit NuGet package, which is what Microsoft recommends for new code.

time to read

4 mins

July - August 2025

CODE Magazine

Natural Language Al-Powered Smart UI

Looking for real-world AI examples is a challenge and part of this challenge comes from Generative AI (GenAI) news dominating the media. It feels like every AI demo involves chatting with GenAl to produce content. The obligatory chat completion demo has started to become the to-do list of AI demo apps, and, to make matters worse, it's selling AI short.

time to read

9 mins

July - August 2025

CODE Magazine

CODE Magazine

Three Conferences, One Destination: MAXIMIZING YOUR AI-ERA LEARNING INVESTMENT

MAXIMIZING YOUR AI-ERA LEARNING INVESTMENT

time to read

4 mins

July - August 2025

CODE Magazine

Exploring .NET MAUI: Popups, Messages, and Data Validation

Through this article series, you've created several .NET MAUI pages, performed navigation, used data binding, and worked with the MVVM and DI design patterns. As you created your view models, you've set information and exception message properties. In this article, you'll build reusable components to display information, error, and validation messages on your pages. To validate

time to read

11 mins

May - June 2025

CODE Magazine

Unlock Serverless Azure Functions

The evolution of cloud computing has transformed how developers build and deploy applications. One of the most significant shifts in this evolution is the rise of serverless architecture. Traditionally, building and maintaining applications requires managing servers, scaling infrastructure, and handling operational concerns.

time to read

10 mins

May - June 2025

CODE Magazine

Securing ASP.NET Core Blazor Applications

Blazor is a modern web framework from Microsoft used for building interactive web applications using C# and .NET. It's based on a flexible, modular component model well suited for building applications with rich, interactive web user interfaces. Blazor leverages the authentication mechanism of ASP.NET Core to establish the identity of a user.

time to read

5 mins

May - June 2025

Listen

Translate

Share

-
+

Change font size