dotnet / dotnet/runtime

Should SystemNative_Pipe and Process.Start use the same lock in native layer?

Open
#126,129 1 comment 0 reactions 0 assignees View on GitHub
area-System.Diagnostics.Process
Dominant language
C#
Stars
18.3k
Forks
5.6k
PR merge metrics
PR metrics pending

Description

From @tmds in https://github.com/dotnet/runtime/pull/125848/changes#r2986434814:

> It could be made a native lock that SystemNative_Pipe would also use, then the logic would apply also to pipes that are created elsewhere and then passed as handle properties

We should revisit this idea after introducing the ability to restrict handle inheritance. Because then it could be a reader lock for limited inheritance and write lock for default settings (on Unixes that don't support atomic creation of non-inheritable pipes).

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.