یکی از امکانات برجسته و مهم زبان برنامهنویسی سی شارپ، استفاده از کلمه کلیدی await است که به شما اجازه میدهد تا به سادگی کدهای غیر همزمان (Asynchronous) را پیادهسازی کنید. این ویژگی به شما امکان میدهد که عملیاتهایی که ممکن است زمانبر باشند، مانند درخواستهای شبکه یا دسترسی به فایلهای بزرگ، بهصورت موازی با دیگر فعالیتهای برنامه انجام شوند، بدون اینکه برنامه برای هر کدام از این عملیاتها متوقف شود. در این مقاله با زبان ساده و با استفاده از مثالهای واقعی به بررسی کاربرد await میپردازیم.
در برنامهنویسی سنتی، زمانی که یک عملیات زمانبر مانند دریافت اطلاعات از یک سرور یا خواندن یک فایل بزرگ را اجرا میکنید، برنامه تا زمان اتمام آن عملیات متوقف میماند. این باعث میشود که عملکرد برنامه کاهش یابد و کاربر نتواند همزمان از بخشهای دیگر برنامه استفاده کند. await به برنامهنویس این امکان را میدهد که کد را به صورت غیرهمزمان بنویسد، به طوری که برنامه متوقف نشود و بتواند به اجرای کارهای دیگر ادامه دهد.
