AzLearn

عبارة Select

Select Statement

مفهوم ~20 دقيقة

عبارة Select — Select Statement

select هي مثل switch لكن للقنوات. تنتظر عدة عمليات قنوات وتُنفّذ أول واحدة تكون جاهزة. هذا يجعلك تتعامل مع عدة مصادر بيانات متزامنة بأناقة.

select الأساسية

main.go

المهل الزمنية — Timeouts

من أهم استخدامات select — تحديد وقت أقصى للانتظار:

main.go

عمليات غير مُعيقة — Non-blocking Operations

أضف default لجعل select لا تنتظر أبداً:

main.go

نمط Fan-In — دمج قنوات متعددة

Fan-in يجمع بيانات من عدة مصادر في قناة واحدة:

main.go

نمط المؤقت الدوري — Ticker Pattern

main.go

نمط done channel — الإلغاء

main.go

نصيحة: close(done) أفضل من إرسال قيم متعددة لأنه يُنبّه كل المستمعين دفعة واحدة.

تحدي — Challenge