我正在尝试运行以下代码:
public class Parsing
{
private const string Url ="blabla";
private static HttpClient client = new HttpClient();
private static Task<string> newton = ParseNewton();
private static Task<string> servicestack = ParseServiceStack();
[Benchmark]
private static async Task<string> ParseNewton()
{
var response = client.GetAsync(Url).Result;
var stream = await response.Content.ReadAsStreamAsync().ConfigureAwait(false);
var serializer = new Newtonsoft.Json.JsonSerializer();
using (var sr = new StreamReader(stream))
using (var jsonTextReader = new JsonTextReader(sr))
{
return serializer.Deserialize<string>(jsonTextReader);
}
}
[Benchmark]
private static async Task<string> ParseServiceStack()
{
var response = client.GetAsync(Url).Result;
var stream = await response.Content.ReadAsStreamAsync().ConfigureAwait(false);
return ServiceStack.Text.JsonSerializer.DeserializeFromStream<string>(stream);
}
}我的电话是
internal class Program
{
public static void Main(string[] args)
{
var summary = BenchmarkRunner.Run<Parsing>();
Console.ReadKey();
}
}我非常确定我做错了很多事情(因为它不工作);我总是收到消息No Benchmark found,并且从我发现的样本中我找不到如何使它工作。
我想将NewtonSoft和ServiceStack给出的url中相同的响应反序列化1000次,并从中获得一个很好的基准。我如何才能让这段代码工作,我做错了什么?
发布于 2020-01-31 22:13:18
类和方法都需要是公共的,不能是静态的。类也不能是密封的。
https://stackoverflow.com/questions/49536585
复制相似问题