Skip to main content
Moderne OnlyThis recipe is proprietary to Moderne and runs on the Moderne platform or CLI — it isn’t part of the open-source catalog. Available with a Moderne subscription.Contact Sales

Use System.Threading.Lock for lock fields

Recipe IDOpenRewrite.Recipes.CSharp.Migration.Dotnet.Net9.UseLockObject
ArtifactOpenRewrite.Recipes.CSharp.Migration.Dotnet

Replace object fields initialized with new object() with System.Threading.Lock initialized with new(). The Lock type provides better performance with the lock statement. Available since .NET 9.

Single recipeOpenRewritemodernizationcsharpdotnetModerne Proprietary License
Try in PlatformTry this recipe in the Moderne platform. Not a user yet? You’ll get a no-setup demo environment, with nothing to install or configure.

Usage

Run this recipe

In order to run C# recipes, you will need to use the Moderne CLI.

Once the CLI is installed, you can install this C# recipe package by running the following command:

Install the recipe package
mod config recipes nuget install OpenRewrite.Recipes.CSharp.Migration.Dotnet

Then, you can run the recipe via:

Run the recipe
mod run . --recipe OpenRewrite.Recipes.CSharp.Migration.Dotnet.Net9.UseLockObject