【问题标题】:Should methods in an API that return Task end with Task or AsyncAPI 中返回 Task 的方法应该以 Task 还是 Async 结尾
【发布时间】:2012-02-03 02:34:53
【问题描述】:

如果一个API有一个同步方法T DoSomething<T>();,如果它返回Task<T>,对应的异步方法的命名约定是什么?

Task<T> DoSomethingTask<T>();    

Task<T> DoSomethingAsync<T>();

还是别的什么?

【问题讨论】:

    标签: c# .net asynchronous naming-conventions


    【解决方案1】:

    如果您谈论的是asyncawait 方法,那么来自MSDN

    按照惯例,后缀“Async”被添加到方法的名称中 由 Async 或 async 修饰符修改。

    ...

    在事件、基类、 或接口合同建议使用不同的名称。例如, 常见事件处理程序的名称,例如 button1_Click,最好不要 改名了。

    【讨论】:

      【解决方案2】:

      根据我在 C# 5 / .NET 4.5 中看到的,首选名称是 DoSomethingTaskAsyncDoSomethingAsync

      例如,.NET 4.5 中的WebClient 类有类似DownloadFileTaskAsync 的方法,因为它已经有一个名为DownloadFileAsync 的方法,所以我假设使用TaskAsync 而不是Async 是为了保持向后兼容性。

      【讨论】:

        猜你喜欢
        • 2012-12-13
        • 1970-01-01
        • 2016-10-05
        • 1970-01-01
        • 1970-01-01
        • 2021-12-12
        • 2013-08-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多