تجنب إنهاء البرنامج السابق لأوانه في عمليات طويلة المدى
لمنع هذا السلوك غير المرغوب فيه ، يبحث المطورون عن أفضل الممارسات لمنع الوظيفة الرئيسية من الإنهاء ، وبالتالي ضمان استمرار تشغيل البرنامج. ومع ذلك ، فإن هذا النهج يمثل تحديات إذا أصبحت جميع goroutines غير نشطة. باستخدام عبارة SELECT {} ، تحجب الوظيفة الرئيسية إلى الأبد ، ومنع إنهاء البرنامج.النظر في العرض التوضيحي التالي:
يستورد ( "FMT" "وقت" ) Func Main () { اذهب إلى الأبد () حدد {} // block إلى الأبد } Func Forever () { ل { fmt.printf ("٪ v \ n" ، time.now ()) time.sleep (time.second) } }
في هذا المثال المحسن ، توظف الوظيفة الرئيسية عبارة SELECT {} لحظرها إلى أجل غير مسمى ، مما يتيح goroutines مثل Forever () لمواصلة تشغيلها دون خطر إنهاء البرنامج السابق لأوانه.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3