عملية مدير الأحداث في إرلانج. العمليات المسماة أو PIDs؟
سؤال
لدي عملية مدير الأحداث التي ترسل الأحداث إلى المشتركين (على سبيل المثال http_session_created ، http_sesssion_destroyed). إذا تم استخدام PID بدلاً من العملية المسماة ، فيجب أن أضعها في وظائف للعمل مع مدير الأحداث ولكن إذا تم استخدام العملية المسماة ، فسيكون الكود أكثر وضوحًا.
أي متغير صحيح؟
شكرًا لك!
المحلول
على الرغم من عدم وجود اختلاف فعلي في عملية تسمية العملية ، فإن تسجيلها ، يجعلها عالمية. أنت في جوهرك تخبر النظام أن هنا خدمة عالمية يمكن لأي شخص استخدامها.
من بينك الوصف ، يبدو أنك تمنحهم أسماء لإنقاذ الجهد الصغير ، الذي يحملها في حلقتك. إذا كان هذا هو الحال ، فسأضع PIDs في سجل مع جميع بيانات الحالة الأخرى التي تحملها. هذا أفضل بكثير يشير إلى نوع العمليات.
نصائح أخرى
إذا كان لديك مجموعة ثابتة من عمليات "المشترك" ، فاستخدم الأسماء المسجلة IMO.
على العكس من ذلك ، إذا كان لديك نوع من الهندسة المعمارية للنشر/الاشتراك حيث يأتي المشتركون ويذهبون ، فأنت بحاجة إلى بنية تحتية لتتبع تلك ، ومن هذه النقطة ، لا يهم حقًا إذا كنت تستخدم PID () أو أسماء.
أحد عيوب استخدام الأسماء المسجلة هو أنك تحتاج إلى تتبعها في قاعدة التعليمات البرمجية لتجنب "الاصطدامات". لذلك الأمر متروك لك: شخصياً ، أميل إلى تفضيل العمليات المسماة ، كما تقول ، إنه يجعل قراءة الكود أكثر وضوحًا. بطريقة أو بأخرى ، لا يهتم OTP.