شنبه 18 شهریور 1396 - 10:41
عملیات همزمان I / O در برنامه های سرور (مشکلات NET. :بخش هفتم)
عملیات همزمان I / O در برنامه های کاربردی سرور، مخصوص برنامه هایی است که تحت بار زیادی هستند.
عملیات همزمان I / O در برنامه های کاربردی سرور، پیچیده و سخت است که به درستی کار می کنند. این عملیات، مخصوص برنامه هایی است که تحت بار زیادی هستند.
عملیات همزمان را پشت سرهم و به طور مکرر در برنامه های سرور انجام ندهید. درعوض آن را به طور ناهمزمان انجام دهید. زیرا وقتی یک درخواست همزمان انجام می شود، روش ناهمزمان معمولاً شش بار بیشتر انجام می شود.
مانند کد زیر:
[HttpGet]
public async Task>
AllCarsInParallelNonBlockingAsync() {
IEnumerable>> allTasks =
PayloadSources.Select(uri => GetCarsAsync(uri));
IEnumerable[] allResults = await Task. WhenAll(allTasks);
return allResults.SelectMany(cars => cars);
}