小编sam*_*m95的帖子

如何使用Task.Run(Func <Task> f)方法签名?

要使用此方法:

public static Task Run(Action action)
Run Code Online (Sandbox Code Playgroud)

我只想写:

void MyMethod(){ //do something }
Task t = Task.Run(new Action(MyMethod));
Run Code Online (Sandbox Code Playgroud)

但是我不明白如何使用以下重载

public static Task Run(Func<Task> f)
Run Code Online (Sandbox Code Playgroud)

msdn提到返回的任务是"f返回的任务的代理",这对我来说更加困惑.代理是什么意思,我将如何调用此方法?

c#

4
推荐指数
2
解决办法
1677
查看次数

在C#中为字符串分配字符串文字

字符串文字在C#中是否具有特定类型(如c ++中的const char*),或者C#是否只为程序中出现的每个字符串文字创建一个新的字符串对象?我很想知道在执行以下语句时幕后发生的事情:

string s1 = "OldValue";
Run Code Online (Sandbox Code Playgroud)

这会调用字符串类中的特定方法(构造函数,或者一个impicit转换操作符,......)或C#是否创建一个包含"OldValue"的新字符串对象(然后只是将其引用分配给s1,就像它会对于任何参考类型)?

我试图理解字符串类的设计是什么,保证s1的价值仍为"OldValue":

string s2 = s1;
s2 = "NewValue";
Run Code Online (Sandbox Code Playgroud)

c# string string-literals assignment-operator

2
推荐指数
1
解决办法
1083
查看次数

标签 统计

c# ×2

assignment-operator ×1

string ×1

string-literals ×1