Multithreading_Library 1.2.1
See the version list below for details.
dotnet add package Multithreading_Library --version 1.2.1
NuGet\Install-Package Multithreading_Library -Version 1.2.1
<PackageReference Include="Multithreading_Library" Version="1.2.1" />
paket add Multithreading_Library --version 1.2.1
#r "nuget: Multithreading_Library, 1.2.1"
// Install Multithreading_Library as a Cake Addin #addin nuget:?package=Multithreading_Library&version=1.2.1 // Install Multithreading_Library as a Cake Tool #tool nuget:?package=Multithreading_Library&version=1.2.1
Multithreading_Library
This library provides utilities to handle various multithreading scenarios in .NET applications. It contains the following classes:
OneWriteMultiRead
: This class allows an object to be read from multiple threads at the same time but only updated from one thread at a time. This helps to ensure data integrity when working with shared resources across multiple threads.
// Example usage
OneWrite_MultiRead<decimal> sharedDecimal = new OneWrite_MultiRead<decimal>(100);
/// Reader threads
decimal t = sharedDecimal.Value;
// writer thread
sharedDecimal.Value = VALUE1;
IDLocks
: This class provides locks that are accessible through a dictionary. This allows specific tasks, names, or other entities to be locked individually, enabling finer control over thread synchronization.
// Example usage
IDLocks<int> idLocks = new IDLocks<int>();
var lockObject = idLocks.ObtainLockObject(5);
RequestIDGenerator
this class returns an incremental, threadsafe id which can be used to identify requests. EG for a websocket. The function rolls over to 0 at int.MaxValue
// Example usage
RequestIDGenerator idGenerator = new RequestIDGenerator();
int id = idGenerator.GetNextRequestId()
AsyncHelper
: This class provides utilities to run an asynchronous Task and wait for the result in a synchronous method. It should be used with caution as it can lead to potential deadlocks. Whenever possible, prefer keeping async code all the way up the call stack.
// Example usage
int parameter = 5;
int result = AsyncHelper.RunSync(async () => await SomeAsyncMethod(parameter));
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. |
-
net6.0
- No dependencies.
-
net7.0
- No dependencies.
-
net8.0
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Multithreading_Library:
Package | Downloads |
---|---|
Chia-Client-API
CHIA-RPC is a C# Nuget library that allows developers to easily communicate with the Chia client. It provides a wrapper for making requests, sending transactions, and minting, making it a versatile tool for interacting with the Chia blockchain. With CHIA-RPC, you can easily integrate Chia functionality into your C# projects. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
2.4.6 | 0 | 1/14/2025 |
2.4.5 | 81 | 11/27/2024 |
2.4.4 | 86 | 11/13/2024 |
2.4.2 | 115 | 7/16/2024 |
2.4.1 | 143 | 4/10/2024 |
2.4.0 | 106 | 4/9/2024 |
2.3.0 | 122 | 4/8/2024 |
2.2.0 | 122 | 4/4/2024 |
2.1.1 | 123 | 4/4/2024 |
2.1.0 | 119 | 4/4/2024 |
2.0.0 | 118 | 3/27/2024 |
1.9.0 | 139 | 3/15/2024 |
1.8.0 | 141 | 1/19/2024 |
1.7.0 | 108 | 1/19/2024 |
1.6.0 | 156 | 1/4/2024 |
1.5.0 | 153 | 12/13/2023 |
1.4.0 | 119 | 12/12/2023 |
1.3.0 | 142 | 12/5/2023 |
1.2.1 | 219 | 12/1/2023 |
1.2.0 | 127 | 12/1/2023 |
1.1.1 | 173 | 7/4/2023 |
1.1.0 | 161 | 7/4/2023 |
1.0.1 | 289 | 1/25/2023 |
1.0.0 | 304 | 1/9/2023 |
- Added RequestIDGenerator to obtain short term unique identifiers
- added .Net 8.0