Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 异步静态任务<;T>;someMethod()与静态异步任务<;T>;someOtherMethod()_C#_Asynchronous_Async Await - Fatal编程技术网

C# 异步静态任务<;T>;someMethod()与静态异步任务<;T>;someOtherMethod()

C# 异步静态任务<;T>;someMethod()与静态异步任务<;T>;someOtherMethod(),c#,asynchronous,async-await,C#,Asynchronous,Async Await,有人能解释一下这两种实现方式之间的区别,并解释一下哪种方式比第10.6节“方法”中的其他方式更好: 方法是实现计算或操作的成员,可以 可以由对象或类执行。方法是使用 方法声明: 方法声明: 方法头方法体 方法头: attributesopt方法修饰符optpartialopt返回类型成员名称类型参数列表opt (形式参数列表opt)类型参数约束子句opt 方法修饰符: 方法修改器 方法修改器方法修改器 方法修改器: 新建 public 受保护 内部 private 静态 virtual 密封的

有人能解释一下这两种实现方式之间的区别,并解释一下哪种方式比第10.6节“方法”中的其他方式更好:

方法是实现计算或操作的成员,可以 可以由对象或类执行。方法是使用 方法声明:

方法声明:
方法头方法体

方法头:
attributesopt方法修饰符opt
partial
opt返回类型成员名称类型参数列表opt
(形式参数列表opt)类型参数约束子句opt

方法修饰符:
方法修改器
方法修改器方法修改器

方法修改器:
新建

public

受保护

内部

private

静态

virtual

密封的

覆盖

摘要

extern

async

换句话说,所有这些修饰符都可能以任何顺序出现。本节的其余部分指定了哪些修饰符组合是有效的(修饰符可以不重复,最多可以提供
静态
虚拟
覆盖
中的一个,等等),但其顺序没有意义。因此,没有区别,使用您喜欢的任何东西(或者更恰当地说,使用您的代码库的其他部分已经确定的任何约定,如果有的话)


请注意,
部分
不被视为
方法修饰符
(但本节稍后将其称为“修饰符”)。这意味着它必须出现在任何合法修饰符之后:
static partial void Foo()
是合法的,
partial static void Foo()
不是。它们完全相同。关键字的顺序在这里并不重要,除非你的同事因为你写
static async public
而刺伤你,否则它们在功能上是一样的。顺序是基于偏好的。