Should SystemNative_Pipe and Process.Start use the same lock in native layer?
Open
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
Assessment
This issue has not been assessed yet.