我正在Windows平台上为教育目的(MVVM模式)使用twitch。在使用HttpClient时,我注意到了纯性能:
我删除了代码,因为它是原型的草稿。
与下面的答案一样,HttpClient.GetAsync中的问题导致了~671 is的执行时间。
发布于 2015-05-08 12:24:52
这与HttpClient的“性能”无关。这样做的原因是,您要去服务器10次,以获取一些信息。这将是每个请求768 be,这听起来是合理的,考虑到一些延迟。对于延迟和服务器响应时间,HttpClient几乎无能为力。
为了验证这种情况,我建议您弹出Fiddler或类似的工具,以确保响应时间是违法者。您还可以将client.GetAsync和response.Content.ReadAsAsync<TwitchStream>()包装在单独的秒表中,并验证序列化不是这里的根本原因。
为了减少获取所有所需信息所需的时间,我建议您考虑并行执行HTTP请求。HttpClient被设计成既可用于多个调用,也可跨多个线程重用。因此,重用单个实例并并行执行多个请求,使用类似于Task.WhenAll或类似的方法,将使其性能更好。
https://stackoverflow.com/questions/30121458
复制相似问题