Как ускорить выполнение метода?
У меня есть следующий метод:
public async Task<IList<YearLink>> GetYearLinksAsync(IEnumerable<ModelLink> modelLinks, CancellationToken cancellationToken = default)
{
var yearLinks = new List<YearLink>();
var config = Configuration.Default.WithDefaultLoader();
var context = BrowsingContext.New(config);
foreach (var modellink in modelLinks)
{
var document = await context.OpenAsync(modellink.Url, cancellationToken);
var links = document.QuerySelectorAll(".mosaic-list a").Select(x => x.GetAttribute("href")?.Trim());
foreach (var link in links.Where(x=>!x.Contains("used")&&!x.Contains("new")).Select(x=>x))
{
Console.WriteLine(link + "specifications/");
var year = new YearLink()
{
Url = link + "specifications/"
};
yearLinks.Add(year);
}
}
return yearLinks;
}
Он получает характеристики автомобиля с сайта Auto.Ru. То есть я получаю ссылки на страницы с характеристиками, таких страниц примерно будет 100000 - 150000. Как можно ускорить выполнение метода?