آدرس : تهران میدان فردوسی خیابان ایرانشهر بین سمیه و طالقانی مجتمع تجاری میلاد واحد 9

پشتیبانی 24 ساعته : 02188867940 – 09927674217

برای مشاهده لیست علاقه مندی ها وارد شوید!

مشاهده محصولات فروشگاه
0

هیچ محصولی در سبد خرید نیست.

تماسهای برگشتی

دسته بندی :اخبار سایت 18 مارس 2023 علیرضا بابامرادی 371
تماس های برگشتی

تماسهای برگشتی

در فصل 1 ، اصطلاحات و مفاهیم پیرامون برنامه نویسی ناهمزمان در JavaScript را مورد بررسی قرار دادیم. تمرکز ما بر درک صف حلقه رویداد تک رشته ای (یک در یک زمان) است که همه “رویدادها” (دعوت های عملکرد Async) را هدایت می کند. ما همچنین روشهای مختلفی را مورد بررسی قرار دادیم که الگوهای همزمانی روابط (در صورت وجود!) را بین زنجیره های همزمان در حال اجرا از وقایع یا “فرآیندهای” (وظایف ، تماس های عملکرد و غیره) توضیح می دهد.

تمام مثالهای ما در فصل 1 از این تابع به عنوان یک واحد عملیات غیرقابل تفکیک استفاده کرده است ، به موجب آن در داخل عملکرد ، بیانیه ها به ترتیب قابل پیش بینی اجرا می شوند (بالاتر از سطح کامپایلر!) ، اما در سطح سفارش کار ، رویدادها (با نام مستعار عملکرد ASYNC ) می تواند در انواع سفارشات اتفاق بیفتد.

در همه این موارد ، این عملکرد به عنوان “پاسخ به تماس” عمل می کند ، زیرا به عنوان هدف حلقه رویداد برای “تماس با” برنامه ، هر زمان که آن مورد در صف پردازش شود ، عمل می کند.

همانطور که بدون شک مشاهده کرده اید ، تماس های برگشتی بسیار رایج ترین روشی است که ناچیز در برنامه های JS بیان و مدیریت می شود. در واقع ، پاسخ به تماس اساسی ترین الگوی Async در زبان است.

برنامه های بی شماری JS ، حتی برنامه های بسیار پیچیده و پیچیده ، هیچ بنیادی دیگر Async غیر از پاسخ به تماس نوشته نشده است (البته الگوهای تعامل همزمانی که در فصل 1 بررسی کردیم). عملکرد پاسخ به تماس ، اسب کار Async برای JavaScript است و کار خود را با احترام انجام می دهد.

به جز … تماس تلفنی بدون کاستی های آنها نیست. بسیاری از توسعه دهندگان از وعده (هدف در نظر گرفته شده!) از الگوهای بهتر Async هیجان زده هستند. اما اگر نمی فهمید که چه چیزی انتزاع است ، و چرا ، استفاده از هرگونه انتزاع غیرممکن است.

در این فصل ، ما یک زن و شوهر از کسانی را که در عمق آن کشف می کنیم ، به عنوان انگیزه ای برای اینکه چرا الگوهای پیشرفته تر async (که در فصل های بعدی این کتاب مورد بررسی قرار گرفته است) مورد بررسی قرار خواهیم داد ، مورد بررسی قرار خواهیم داد.

 

ادامه

بیایید به مثال پاسخ به تماس Async برگردیم که در فصل 1 شروع کردیم ، اما بگذارید کمی آن را اصلاح کنم تا یک نکته را نشان دهم:

// A
ajax( “..”, function(..){
// C
} );
// B

A // و B // نمایانگر نیمه اول برنامه (با نام مستعار) است ، و // c نیمه دوم برنامه را نشان می دهد (با نام مستعار بعدی). نیمه اول بلافاصله اجرا می شود ، و سپس “مکث” طول نامشخص وجود دارد. در لحظه آینده ، اگر تماس AJAX تکمیل شود ، برنامه در جایی که از آن خارج شده است انتخاب می شود و با نیمه دوم ادامه می یابد.

به عبارت دیگر ، عملکرد پاسخ به تماس ، ادامه برنامه را بسته یا محاصره می کند.

بیایید کد را حتی ساده تر کنیم:

// A
setTimeout( function(){
// C
}, 1000 );
// B

علیرضا بابامرادی

راه آسان‌تری برای ارتباط با کاربران‌مان پیدا کرده‌ایم :) عضویت در کانال

مطالب زیر را حتما بخوانید:

قوانین ارسال دیدگاه در سایت

  • چنانچه دیدگاهی توهین آمیز باشد تایید نخواهد شد.
  • چنانچه دیدگاه شما جنبه ی تبلیغاتی داشته باشد تایید نخواهد شد.
  • چنانچه از لینک سایر وبسایت ها و یا وبسایت خود در دیدگاه استفاده کرده باشید تایید نخواهد شد.
  • چنانچه در دیدگاه خود از شماره تماس، ایمیل و آیدی تلگرام استفاده کرده باشید تایید نخواهد شد.
  • چنانچه دیدگاهی بی ارتباط با موضوع آموزش مطرح شود تایید نخواهد شد.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

لینک کوتاه:
0