C# 在循环内使用continue
给定以下示例代码:C# 在循环内使用continue,c#,performance,while-loop,idisposable,continue,C#,Performance,While Loop,Idisposable,Continue,给定以下示例代码: var count = 0; while (count < 5) { using (var request = new HttpRequestMessage(HttpMethod.Get, requestUri)) using (var response = await StaticHttpClient.Client.SendAsync(request)) { if (!response.IsSuccessStatusCode)
var count = 0;
while (count < 5)
{
using (var request = new HttpRequestMessage(HttpMethod.Get, requestUri))
using (var response = await StaticHttpClient.Client.SendAsync(request))
{
if (!response.IsSuccessStatusCode)
{
switch ((int)response.StatusCode)
{
case 500:
case 504:
continue;
}
}
else
{ ... }
}
count++;
}
var计数=0;
同时(计数<5)
{
使用(var request=newhttprequestmessage(HttpMethod.Get,requestUri))
使用(var response=wait StaticHttpClient.Client.SendAsync(请求))
{
如果(!response.issucessStatusCode)
{
开关((int)响应状态代码)
{
案例500:
案例504:
继续;
}
}
其他的
{ ... }
}
计数++;
}
这些IDisposable对象会在此方法中泄漏内存,还是正确调用Dispose方法?(有许多情况下,从开关失踪,我不关心那里的效率)
这些IDisposable对象会在此方法中泄漏内存,还是正确调用Dispose方法
由于您使用了
using
语句,因此一次性用品将被正确调用Dispose()
。当您继续时,将在循环的下一次迭代之前调用Dispose()
方法。使用语句将始终调用Dispose(),这就是使用它的全部意义。这是我期望的功能,但是我想确定。谢谢,我问自己同样的问题。