Eric Erhardt created ARROW-4717:
-----------------------------------

             Summary: [C#] Consider exposing ValueTask instead of Task
                 Key: ARROW-4717
                 URL: https://issues.apache.org/jira/browse/ARROW-4717
             Project: Apache Arrow
          Issue Type: Improvement
          Components: C#
            Reporter: Eric Erhardt


See [https://github.com/apache/arrow/pull/3736#pullrequestreview-207169204] for 
the discussion and 
[https://devblogs.microsoft.com/dotnet/understanding-the-whys-whats-and-whens-of-valuetask/]
 for the reasoning.

Using `Task<T>` in public API requires that a new Task instance be allocated on 
every call. When returning synchronously, using ValueTask will allow the method 
to not allocate.

In order to do this, we will need to take a new dependency on  
{{System.Threading.Tasks.Extensions}} NuGet package.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to