برنامه نویسی

نکات به اندازه نیش برای جلوگیری از بن بست در برنامه های GO شما

این مقاله در ابتدا در وبلاگ من منتشر شد.

بن بست چیست؟
بن بست هنگامی رخ می دهد که گوروها در انتظار یکدیگر گیر می شوند. این برنامه شما را متوقف می کند و اشکال زدایی می تواند دشوار باشد. اجتناب از بن بست برای نوشتن کد GO کارآمد مهم است.

نکته 1: کانال های نزدیک
همیشه وقتی هدف آنها کامل شود کانال ها را ببندید. از آنجا که این گیرنده ها را نشان می دهد که داده های بیشتری در حال آمدن نیست.
شرح تصویر

نکته 2: از انتخاب با پیش فرض استفاده کنید
از یک بلوک انتخابی با یک مورد پیش فرض برای عملیات غیر مسدود کننده استفاده کنید. این باعث می شود کد شما حتی اگر یک کانال آماده نباشد ، پاسخگو باشد.
شرح تصویر

نکته 3: از کانال های بافر استفاده کنید
کانال های بافر می توانند پیام ها را به طور موقت ذخیره کنند و از جلوگیری از مسدود کردن غیر ضروری جلوگیری کنند.
شرح تصویر

قرار دادن همه اینها
این تکنیک ها را برای برنامه های قوی و بدون بن بست ترکیب کنید: کانال های نزدیک هنگام انجام استفاده از انتخاب با پیش فرض برای عدم انسداد ، کانال های بافر اهرمی را برای برقراری ارتباط صاف ارسال می کند.

نوشته های مشابه

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

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

دکمه بازگشت به بالا