You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This property it is only meaningful on .NET Framework where it functions as a socket-level switch between IOCP and Win32 event based overlapped IO.
.NET (Core) Windows sockets are entirely IOCP-based, and the concept of "overlapped IO" does not exist on other platforms, therefore the property contains empty logic, and there is no chance we will ever implement it. To avoid confusion, I suggest to obsolete and hide it it together with the related flag in SocketInformationOptions.
Proposed API
public class Socket
{
+ [Obsolete]+ [EditorBrowsable(EditorBrowsableState.Never)]
public bool UseOnlyOverlappedIO { get; set; }
}
public enum SocketInformationOptions
{
NonBlocking = 1,
Connected = 2,
Listening = 4,
+ [Obsolete]+ [EditorBrowsable(EditorBrowsableState.Never)]
UseOnlyOverlappedIO = 8,
}
Risks
Breaking /warnaserror builds when porting to .NET 6. (Which may actually prevent runtime failures.)
Activity
Wraith2 commentedon Jan 19, 2021
Is it also worth marking it as non browsable?
antonfirsov commentedon Jan 19, 2021
In my opinion - yes, so updated the proposal.
karelz commentedon Feb 4, 2021
Triage: We agree, it is no-op on .NET Core, let's obsolete it.
terrajobst commentedon Feb 4, 2021
Video
Obsolete Socket.UseOnlyOverlappedIO (#52475)