حالات يجب معرفتها عند استخدام عبارات التحديد في Golang

سجل واكسب 1000 دولار في اليوم ⋙

في لغة Go، تكون عبارة select مثل عبارة switch ، ولكن في عبارة select، تشير عبارة case إلى الاتصال، أي عملية الإرسال أو الاستقبال على القناة.

حالات يجب معرفتها عند استخدام عبارات التحديد في Golang

بناء الجملة:

select{

case SendOrReceive1: // Lệnh
case SendOrReceive2: // Lệnh
case SendOrReceive3: // Lệnh
.......
default: // Lệnh

في هذه المقالة سوف نتعلم كيفية استخدام الحالة الافتراضية لتجنب الجمود. ولكن أولاً، دعونا نكتشف ما هي حالة الجمود عند استخدام أمر تحديد Golang ؟

أشياء يجب معرفتها عن حالة الجمود في لغة جولانج

الجمود: عندما تحاول قراءة أو كتابة البيانات من قناة ولكن القناة فارغة. وبالتالي، فإنه يمنع التنفيذ الحالي للروتين ويمرر التحكم إلى روتينات أخرى، ولكن إذا لم يتوفر أي روتين آخر أو كانت الروتينات الأخرى في وضع الراحة بسبب هذا الموقف، فسوف يتعطل البرنامج. هذه الظاهرة تسمى الجمود. كما هو موضح في المثال أدناه:

على سبيل المثال:

// Chương trình Go minh hoạc
// cách deadlock phát sinh
package main 

// Hàm chính
func main() { 

	// Tạo một kênh
	// Deadlock phát sinh bởi
	// không có goroutine đang viết
	// vào kênh này, vì thế
	// lệnh select đã bị khóa mãi mãi
	c := make(chan int) 
	select { 
	case <-c: }="" }="">

نتيجة:

fatal error: all goroutines are asleep - deadlock!

goroutine 1 [chan receive]:
main.main()

لتجنب هذا الموقف، نستخدم الحالة الافتراضية في عبارة التحديد. بعبارة أخرى، عندما يحدث الجمود في البرنامج، يتم تنفيذ الحالة الافتراضية لعبارة select لتجنب الجمود. كما هو الحال في المثال أدناه، نستخدم الحالة الافتراضية في عبارة التحديد لتجنب الجمود.

على سبيل المثال:

// Chương trình Go minh họa cách giải quyết
// vấn đề deadlock bằng case mặc định
package main 

import "fmt"

// Hàm chính
func main() { 

	// Tạo 1 kênh
	c := make(chan int) 
	select { 
	case <-c: default:="" fmt.println("!..="" default="" case..!")="" }="" }="">

نتيجة:

!.. Default case..!

يُسمح لك أيضًا باستخدام الحالة الافتراضية عندما تحتوي عبارة select على قناة فارغة فقط . كما هو موضح في المثال أدناه، القناة c هي صفر، لذلك يتم تنفيذ الحالة الافتراضية إذا لم تكن الحالة الافتراضية هنا متاحة، ثم سيتم حظر البرنامج إلى الأبد وينشأ الجمود.

على سبيل المثال:

// Chương trình Go minh họa
// chạy case mặc định
package main 

import "fmt"

// Hàm chính
func main() { 

	// Tạo một kênh
	var c chan int

	select { 
	case x1 := <-c: fmt.println("value:="" ",="" x1)="" default:="" fmt.println("default="" case..!")="" }="" }="">

نتيجة:

Default case..!
Sign up and earn $1000 a day ⋙

Leave a Comment

Gmail يضيف علامة اختيار زرقاء للتحقق من المرسلين ذوي السمعة الطيبة

Gmail يضيف علامة اختيار زرقاء للتحقق من المرسلين ذوي السمعة الطيبة

لفترة طويلة، ومع تطور منصات التواصل الاجتماعي وشعبيتها، أصبحت "العلامة الزرقاء" تدريجيا واحدة من أقوى الشخصيات في عالم الإنترنت.

يبدأ ChatGPT بإضافة تكامل Google Drive، ولكن ليس للجميع

يبدأ ChatGPT بإضافة تكامل Google Drive، ولكن ليس للجميع

بدأت ChatGPT بإضافة الدعم للتكامل مع Google Drive ولكن هذه الميزة غير متاحة لجميع المستخدمين.

سيارة أجرة طائرة تعمل بالهيدروجين والكهرباء تقطع مسافة 841 كيلومترًا ولا تنبعث منها سوى المياه

سيارة أجرة طائرة تعمل بالهيدروجين والكهرباء تقطع مسافة 841 كيلومترًا ولا تنبعث منها سوى المياه

نجح النموذج الأولي لسيارة أجرة طائرة تعمل بالهيدروجين والكهرباء من شركة Joby Aviaiton الأمريكية في إتمام رحلة بطول 841 كيلومترًا دون انبعاث أي غاز منها سوى الماء.

أفضل 5 هواتف أندرويد اليوم

أفضل 5 هواتف أندرويد اليوم

سواء كنت تبحث عن أحدث وأفضل الهواتف أو تريد خيارًا مناسبًا للميزانية مع توفير تجربة جيدة للهاتف الذكي، فهذه هي أفضل هواتف Android المتوفرة حاليًا.

لماذا لا يصدر كاب كات الفيديو الخاص بك؟ 🤯 حلول سهلة ومجربة لكل مشكلة تصدير!

لماذا لا يصدر كاب كات الفيديو الخاص بك؟ 🤯 حلول سهلة ومجربة لكل مشكلة تصدير!

اكتشف الأسباب الشائعة وراء عدم تصدير كاب كات للفيديوهات، وتعلّم أسهل الحلول الفعّالة لإصلاح مشكلة التصدير واستعادة إبداعك.

كيفية تفعيل إشعارات Gmail على iPhone

كيفية تفعيل إشعارات Gmail على iPhone

يتيح Gmail على iPhone للمستخدمين تلقي إشعارات البريد الإلكتروني وفقًا لاحتياجات كل شخص، أو تلقي إشعارات البريد الإلكتروني المهمة فقط، أو تلقي إشعارات البريد الإلكتروني ذات الأولوية، أو تلقي جميع أنواع رسائل البريد الإلكتروني على Gmail على iPhone.

كيفية استخدام الثوابت في Golang

كيفية استخدام الثوابت في Golang

ما هو Constant أو Const في Golang؟ إليك ما تحتاج إلى معرفته حول استخدام الثوابت في Go.

كيفية تحسين أداء متصفح Google Chrome لبدء تشغيل سريع للغاية

كيفية تحسين أداء متصفح Google Chrome لبدء تشغيل سريع للغاية

لقد مررنا جميعًا بهذه التجربة: النقر على أيقونة Chrome، ثم الانتظار إلى الأبد حتى يتم تشغيل المتصفح. قد يكون الانتظار إلى ما لا نهاية حتى يتم تحميل الصفحة الرئيسية أمرًا محبطًا.

Chromecast ميت رسميًا

Chromecast ميت رسميًا

لقد كان خط Chromecast من Google منذ فترة طويلة خيارًا شائعًا إذا كنت تريد استبدال تجربة التلفزيون الذكي لديك أو تحويل أي تلفزيون إلى تلفزيون ذكي.

10 ميزات في هواتف سامسونج جالاكسي يجب على جميع هواتف أندرويد تعلمها

10 ميزات في هواتف سامسونج جالاكسي يجب على جميع هواتف أندرويد تعلمها

إذا كنت تستخدم هاتف Samsung منذ عدة سنوات الآن، فستجد أن الميزات الرائعة التي توفرها سلسلة Galaxy يصعب التغلب عليها.

سبيس إكس تطلق أول قمر صناعي متنقل يدعم الاتصال المباشر بالهواتف الذكية

سبيس إكس تطلق أول قمر صناعي متنقل يدعم الاتصال المباشر بالهواتف الذكية

في 3 يناير/كانون الثاني، أطلقت شركة سبيس إكس التابعة لإيلون ماسك أول ستة أقمار صناعية قادرة على توفير خدمة الهاتف المحمول للمناطق النائية دون الحاجة إلى محطة طرفية.

جوجل تضيف ميزة لفتح التطبيقات تلقائيًا بعد تثبيتها على متجر Play

جوجل تضيف ميزة لفتح التطبيقات تلقائيًا بعد تثبيتها على متجر Play

أضافت شركة Google ميزة جديدة صغيرة ولكنها طال انتظارها إلى متجر Play.

الدوال المتقلبة في لغة جولانج

الدوال المتقلبة في لغة جولانج

تتيح لك الدوال المتنوعة في Go تمرير عدد متغير من الوسائط إلى دالة. إليك كل ما تحتاج إلى معرفته حول الوظائف المتقلبة في Golang.

تعليمات التسجيل في Google One AI Premium مجانًا لمدة شهر واحد

تعليمات التسجيل في Google One AI Premium مجانًا لمدة شهر واحد

يقدم Google One AI Premium نسخة تجريبية مجانية لمدة شهر واحد للمستخدمين للتسجيل وتجربة العديد من الميزات المحدثة مثل المساعد Gemini Advanced.

كيفية استخدام Gemini على iPhone

كيفية استخدام Gemini على iPhone

أصبح تطبيق Google Gemini متاحًا رسميًا على iPhone ليتمكن المستخدمون من تنزيله وتجربته. تتشابه واجهة وميزات Gemini على iPhone مع إصدار Gemini على Android.

الفرق بين التلفزيون العادي والتلفزيون الذكي

الفرق بين التلفزيون العادي والتلفزيون الذكي

لقد اجتاحت أجهزة التلفاز الذكية العالم حقًا. مع وجود العديد من الميزات الرائعة واتصال الإنترنت، غيرت التكنولوجيا الطريقة التي نشاهد بها التلفزيون.

لماذا لا يوجد ضوء في الفريزر ولكن الثلاجة بها ضوء؟

لماذا لا يوجد ضوء في الفريزر ولكن الثلاجة بها ضوء؟

الثلاجات هي أجهزة مألوفة في المنازل. تحتوي الثلاجات عادة على حجرتين، حجرة التبريد واسعة وتحتوي على ضوء يضيء تلقائيًا في كل مرة يفتحها المستخدم، بينما حجرة الفريزر ضيقة ولا تحتوي على ضوء.

طريقتان لإصلاح ازدحام الشبكة الذي يُبطئ اتصال Wi-Fi

طريقتان لإصلاح ازدحام الشبكة الذي يُبطئ اتصال Wi-Fi

تتأثر شبكات Wi-Fi بالعديد من العوامل التي تتجاوز أجهزة التوجيه وعرض النطاق الترددي والتداخل، ولكن هناك بعض الطرق الذكية لتعزيز شبكتك.

كيفية الرجوع من نظام التشغيل iOS 17 إلى نظام التشغيل iOS 16 دون فقدان البيانات باستخدام Tenorshare Reiboot

كيفية الرجوع من نظام التشغيل iOS 17 إلى نظام التشغيل iOS 16 دون فقدان البيانات باستخدام Tenorshare Reiboot

إذا كنت تريد الرجوع إلى نظام التشغيل iOS 16 المستقر على هاتفك، فإليك الدليل الأساسي لإلغاء تثبيت نظام التشغيل iOS 17 والرجوع من نظام التشغيل iOS 17 إلى 16.

ماذا يحدث للجسم عند تناول الزبادي يومياً؟

ماذا يحدث للجسم عند تناول الزبادي يومياً؟

الزبادي طعام رائع. هل من الجيد تناول الزبادي يوميًا؟ عندما تأكل الزبادي يومياً كيف سيتغير جسمك؟ دعونا نكتشف ذلك معًا!

ما هو نوع الأرز الأفضل للصحة؟

ما هو نوع الأرز الأفضل للصحة؟

تناقش هذه المقالة أكثر أنواع الأرز المغذية وكيفية تحقيق أقصى قدر من الفوائد الصحية لأي نوع أرز تختاره.

كيفية الاستيقاظ في الوقت المحدد في الصباح

كيفية الاستيقاظ في الوقت المحدد في الصباح

إن إنشاء جدول للنوم وروتين وقت النوم، وتغيير المنبه، وتعديل نظامك الغذائي هي بعض التدابير التي يمكن أن تساعدك على النوم بشكل أفضل والاستيقاظ في الوقت المحدد في الصباح.

نصائح للعب Rent Please! لعبة Landlord Sim للمبتدئين

نصائح للعب Rent Please! لعبة Landlord Sim للمبتدئين

الإيجار من فضلك! Landlord Sim هي لعبة محاكاة للهواتف المحمولة تعمل على نظامي التشغيل iOS وAndroid. ستلعب دور مالك مجمع سكني وتبدأ في تأجير شقة بهدف ترقية التصميم الداخلي لشققك وتجهيزها للمستأجرين.

أحدث رموز برج الدفاع في الحمام وكيفية إدخال الرموز

أحدث رموز برج الدفاع في الحمام وكيفية إدخال الرموز

احصل على رمز لعبة Bathroom Tower Defense من Roblox واستخدمه للحصول على مكافآت مثيرة. سيساعدونك على ترقية أو فتح الأبراج ذات الضرر الأعلى.

بنية ورموز ومبادئ تشغيل المحولات

بنية ورموز ومبادئ تشغيل المحولات

دعونا نتعلم عن بنية ورموز ومبادئ تشغيل المحولات بالطريقة الأكثر دقة.

4 طرق تجعل الذكاء الاصطناعي أجهزة التلفزيون الذكية أفضل

4 طرق تجعل الذكاء الاصطناعي أجهزة التلفزيون الذكية أفضل

من جودة الصورة والصوت الأفضل إلى التحكم الصوتي والمزيد، تعمل هذه الميزات المدعومة بالذكاء الاصطناعي على جعل أجهزة التلفزيون الذكية أفضل بكثير!

لماذا ChatGPT أفضل من DeepSeek

لماذا ChatGPT أفضل من DeepSeek

في البداية، كان لدى الناس آمال كبيرة في DeepSeek. باعتباره روبوت محادثة يعمل بالذكاء الاصطناعي يتم تسويقه كمنافس قوي لـ ChatGPT، فإنه يعد بإمكانيات وتجارب دردشة ذكية.

تعرف على Fireflies.ai: السكرتير الذكي المجاني الذي يوفر لك ساعات من العمل

تعرف على Fireflies.ai: السكرتير الذكي المجاني الذي يوفر لك ساعات من العمل

من السهل تفويت التفاصيل المهمة عند تدوين الأساسيات الأخرى، ومحاولة تدوين الملاحظات أثناء الدردشة قد تكون مزعجة. Fireflies.ai هو الحل.

كيفية تربية أكسولوتل في ماين كرافت، ترويض السلمندر في ماين كرافت

كيفية تربية أكسولوتل في ماين كرافت، ترويض السلمندر في ماين كرافت

سيكون Axolot Minecraft مساعدًا رائعًا للاعبين عند العمل تحت الماء إذا كانوا يعرفون كيفية استخدامه.

مكان هادئ: الطريق إلى الأمام - تكوين لعبة الكمبيوتر الشخصي

مكان هادئ: الطريق إلى الأمام - تكوين لعبة الكمبيوتر الشخصي

تم تقييم تكوين A Quiet Place: The Road Ahead بدرجة عالية جدًا، لذا سيتعين عليك مراعاة التكوين قبل اتخاذ قرار التنزيل.