مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

salman_b

عضویت از 1396/02/18

کند بودن عملیات Async در مقایسه با Sync

  • سه شنبه 26 تیر 1397
  • 22:41
تشکر میکنم

من چندین تست روی سرویس Web Api و با Entity Framework انجام دادم

برای I/O مثل دیتابیس هم حالت هم زمان و هم غیرهمزمان رو تست کردم

مثلا زمان پاسخ دهی select ده هزار رکورد رو با ToListAsync و هم با ToList رو برگردوندم.

زمان پاسخ دهی همزمان که میاد و Thread Pool رو قفل میکنه شاید ۵۰۰ میلی ثانیه سریع تر از حالت غیر همزمانی بود که None Blocking هستش و عملا Cpu Load نداره!

دلیل این چیه ؟

پاسخ های این پرسش

تعداد پاسخ ها : 3 پاسخ
کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • چهارشنبه 27 تیر 1397
  • 08:13

شما باید روی سرور تست کنید نه روی لوکال

ویندوز سرور ویندوز سرور است و قابلیت های زیادی برای همروندی  یا Paraller Programming دارد

async به سرعت پاسخ کاری نداره فقط به صورت موازی اجرا میکنه

کاربر سایت

salman_b

عضویت از 1396/02/18

  • چهارشنبه 27 تیر 1397
  • 12:42

به نظرتون اینکه تمام Query های دیتابیس رو (Select, Insert, Update, Delete) رو به صورت async پیاده سازی کنم و برای جوابش await کنم بهتره ؟

آیا اینکار باعث میشه که پردازنده busy wait نداشته باشه و برای دریافت پاسخ I/O منتظر یه event بمونه ؟

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • چهارشنبه 27 تیر 1397
  • 12:54

بله 

در واقع باید aeait باشند وگر نه به مشکل میخورید 

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)