-
Notifications
You must be signed in to change notification settings - Fork 5.2k
Closed
Labels
api-approvedAPI was approved in API review, it can be implementedAPI was approved in API review, it can be implementedarea-System.Net.Socketstenet-performancePerformance related issuePerformance related issue
Milestone
Description
Separated out of https://github.com/dotnet/corefx/issues/21281 for tracking purposes.
- Implement/expose/test span-based methods in System.Net.Sockets in corefx
- Implement/expose/test buffer-based methods in System.Net.Sockets in corefx
namespace System.Net.Sockets
{
public class Socket
{
public int Receive(Span<byte> buffer);
public int Receive(Span<byte> buffer, SocketFlags flags);
public int Receive(Span<byte> buffer, SocketFlags socketFlags, out SocketError errorCode);
public int Send(ReadOnlySpan<byte> buffer);
public int Send(ReadOnlySpan<byte> buffer, SocketFlags flags);
public int Send(ReadOnlySpan<byte> buffer, SocketFlags flags, out SocketError errorCode);
…
}
public class SocketTaskExtensions
{
public static ValueTask<int> ReceiveAsync(this Socket socket, Buffer<byte> buffer, SocketFlags socketFlags, CancellationToken cancellationToken = default(CancellationToken));
public static ValueTask<int> SendAsync(this Socket socket, ReadOnlyBuffer<byte> buffer, SocketFlags socketFlags, CancellationToken cancellationToken = default(CancellationToken));
…
}
public class SocketAsyncEventArgs
{
public void SetBuffer(Buffer<byte> buffer);
public Buffer<byte> GetBuffer();
…
}
}
jnm2, csrakowski and DanilovSoftomariom
Metadata
Metadata
Assignees
Labels
api-approvedAPI was approved in API review, it can be implementedAPI was approved in API review, it can be implementedarea-System.Net.Socketstenet-performancePerformance related issuePerformance related issue