-
Notifications
You must be signed in to change notification settings - Fork 4.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[wasm] Mark System.Threading.ThreadPool unsupported on Browser #41891
[wasm] Mark System.Threading.ThreadPool unsupported on Browser #41891
Conversation
Tagging subscribers to this area: @safern, @ViktorHofer |
@@ -32,6 +33,7 @@ public static bool BindHandle(IntPtr osHandle) | |||
throw new PlatformNotSupportedException(SR.Arg_PlatformNotSupported); // Replaced by ThreadPoolBoundHandle.BindHandle | |||
} | |||
|
|||
[UnsupportedOSPlatform("browser")] | |||
public static bool BindHandle(SafeHandle osHandle) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this needs to be added to
runtime/src/coreclr/src/System.Private.CoreLib/src/System/Threading/ThreadPool.CoreCLR.cs
Line 355 in 3c1b48e
public static bool BindHandle(SafeHandle osHandle) |
0b32bab
to
7d07b8c
Compare
@@ -32,6 +33,7 @@ public static bool BindHandle(IntPtr osHandle) | |||
throw new PlatformNotSupportedException(SR.Arg_PlatformNotSupported); // Replaced by ThreadPoolBoundHandle.BindHandle | |||
} | |||
|
|||
[UnsupportedOSPlatform("browser")] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since it looks like ThreadPool.BindHandle is not supported on any of mono, I wonder if it would be better to add support for UnsupportedOSPlatform("mono")
or to list UnsupportedOSPlatform
attribute for each mono platform for now. I believe having just UnsupportedOSPlatform("browser")
would imply that this API is supported on the other mono platforms.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this API is Windows specific (cc @jkotas for confirmation) and we could mark it that way. Using UnsupportedOSPlatform("mono")
combination does not make sense.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, BindHandle
is Windows-specific. CoreCLR implementation throws PNSE on Unix.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mdh1418 could you turn the attribute to [SupportedOSPlatform("windows")]
…t#41891) * System.Threading.ThreadPool enable platform attributes * Mark System.Threading.ThreadPool APIs unsupported on browser * System.Threading.ThreadPool Add Unsupported attribute to other ThreadPool files * Remove Unsupported attributes from BindHandle * Add windows Supported Attribute to BindHandle Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
* [wasm] Mark System.ComponentModel APIs as unsupported on Browser (#41094) * [wasm] System.ComponentModel enable platform attributes * [wasm] Mark ExtendedProtectionPolicyTypeConverter.ConvertTo as unsupported * [wasm] Mark System.ComponentModel.TypeDescriptor.CreateInstance as unsupported * [wasm] Mark System.ComponentModel.TypeDescriptionProvider.CreateInstance as unsupported * [wasm] Mark System.ComponentModel.LicenseManager.CreateWithContext as unsupported * [wasm] Mark System.ComponentModel.MaskedTextProvider.Clone as unsupported Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com> * [wasm] Mark System.Console APIs as unsupported on Browser (#41184) * [wasm] Mark System.Console APIs as unsupported on Browser * System.Console remove unsupported attribute from Console.Clear() * System.Console mark SetIn as unsupported on Browser * System.Console move UnsupportedOSPlatform attributes down to the accessor Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com> * Mark System.Diagnostics.FileVersionInfo as unsupported on Browser (#41271) Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com> * Mark System.Diagnostics.Process unsupported at assembly level (#41694) Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com> * [wasm] Mark System.IO.Compression APIs as unsupported on Browser (#41683) * [wasm] System.IO.Compression.Brotli enable platform attributes * Mark System.IO.Compression.Brotli unsupported at assembly level Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com> * [wasm] Mark System.IO.FileSystem.Watcher APIs as unsupported on Browser (#41682) * [wasm] System.IO.FileSystem.Watcher enable platform attributes * Mark System.IO.FileSystem.Watcher unsupported at assembly level Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com> * [wasm] Mark System.IO.IsolatedStorage APIs as unsupported on Browser (#41700) * [wasm] System.IO.IsolatedStorage enable platform attributes * Mark System.IO.IsolatedStorage Unsupported at assembly level Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com> * Mark some System.Net.* APIs as unsupported on Browser WASM (#40924) * [wasm] Mark System.Threading.ThreadPool unsupported on Browser (#41891) * System.Threading.ThreadPool enable platform attributes * Mark System.Threading.ThreadPool APIs unsupported on browser * System.Threading.ThreadPool Add Unsupported attribute to other ThreadPool files * Remove Unsupported attributes from BindHandle * Add windows Supported Attribute to BindHandle Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com> * Mark System.Net.WebSockets.ClientWebSocketOptions APIs as unsupported on Browser (#41963) * Mark System.Net.WebSockets.ClientWebSocketOptions APIs as unsupported on Browser * Add the attributes to non-browser version of ClientWebSocketOptions class to avoid build error * Add using * Include platform attributes * [wasm] Mark System.Net.NameResolution Unsupported at assembly level (#41985) Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com> Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com> Co-authored-by: Maxim Lipnin <v-maxlip@microsoft.com>
…t#41891) * System.Threading.ThreadPool enable platform attributes * Mark System.Threading.ThreadPool APIs unsupported on browser * System.Threading.ThreadPool Add Unsupported attribute to other ThreadPool files * Remove Unsupported attributes from BindHandle * Add windows Supported Attribute to BindHandle Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
Contributes to #41087