Go में N चैनलों को कैसे सुनें: मनमानी संख्या में चैनलों के लिए डायनेमिक select?
सभी को नमस्ते! मैं Go सीख रहा हूँ और एक समस्या का सामना किया। मैं एक उपयोगिता लिख रहा हूँ जो कई डेटा स्रोतों से इवेंट प्रोसेस करती है। प्रत्येक स्रोत अपनी गोरूटीन में काम करता है और अपने चैनल में डेटा भेजता है। स्रोतों की संख्या पहले से ज्ञात नहीं है और प्रोग्राम के चलने के दौरान बदल सकती है (उपयोगकर्ता स्रोत जोड़/हटा सकता है)।\n\nGo में `select` कंस्ट्रक्शन है जो एक साथ कई चैनलों को सुनने की अनुमति देता है। लेकिन यह स्टैटिक है — सभी `case` पहले से निर्दिष्ट करने होते हैं:\n\n```go\nselect {\ncase msg1 := <-ch1:\n // प्रोसेसिंग\ncase msg2 := <-ch2:\n // प्रोसेसिंग\ncase msg3 := <-ch3:\n // प्रोसेसिंग\n}\n```\n\nलेकिन अगर मेरे पास चैनलों का एक स्लाइस `[]chan int` है और उनकी संख्या 5, 10 या 100 हो सकती है तो क्या करूँ? डायनेमिक `select` कैसे लिखूँ जो मनमानी संख्या में चैनलों के साथ काम करे?
अभी तक कोई उत्तर नहीं।
लॉग इन करें उत्तर देने के लिए
ब्लॉग
2024 में वेब डेवलपमेंट के लिए 10 सर्वश्रेष्ठ TypeScript फ्रेमवर्क