المحتوى
عندما يحتاج برنامج كمبيوتر إلى تشغيل روتين فرعي طويل ، فمن الأفضل تشغيله كعملية خلفية. عادةً ما لا يكون لعملية الخلفية نفس أولوية المقدمة ، لذلك ستعمل ببطء أكثر. قد تتضمن المسارات الفرعية التحقق من التحديثات وتنزيلها أو تنزيل ملفات السجل أو العمليات الحسابية الطويلة.
الاتجاهات
تعتبر الروتين الفرعي في الخلفية رائعة للعمليات الطويلة (كوتي تانير / فوتوديسك / غيتي إيماجز)-
تشغيل Visual Basic وإنشاء مشروع جديد من نوع Windows النموذج.
-
ضع في السطر الأول من رمز الملف:
"نظام الواردات. الخيط"
وأضف:
"Dim t as Thread"
إلى القسم الرئيسي من النموذج.
-
أضف زرًا إلى النموذج وقم بتغيير اسمه إلى "btnStart". تغيير نص الزر إلى "بدء عملية الخلفية".
-
أضف الكود التالي إلى إجراء زر "btnStart":
Sub btnStart_Click (مرسل ByVal باسم System.Object و ByVal و As System.EventArgs) Handles btnStart.Click t = مؤشر ترابط جديد (AddressOf Me.BackgroundProcess) t.Priority = ThreadPriority.BelowNormal 'سيعطي هذا الروتين الفرعي أقل أهمية .Start () End Sub
سيبدأ هذا الإجراء في الخلفية ويعطيها أولوية أقل من المعتاد ، بحيث يتم تشغيلها بسرعة أقل ولا تتداخل مع عناصر التنقل الخاصة بالمستخدم.
-
أضف الروتين الفرعي التالي لتشغيله في الخلفية:
Private Sub BackgroundProcess () 'قم بإجراء عملية طويلة هنا ، وليس مجرد حلقة لا نهائية ، بينما يمكنك القيام بـ True Loop End Sub
-
للانتقال لأسفل ، أضف الكود التالي إلى طريقة إغلاق النموذج:
نموذج فرعي خاص 1_FormClosing (مرسل ByVal باسم كائن ، ByVal و As System.Windows.Forms.FormClosingEventArgs) يعالج Me.FormClosing t.Abort () End Sub
بدون هذا الروتين ، لن يتم إيقاف تشغيل البرنامج تلقائيًا لأن العملية لا تزال قيد التشغيل.
-
قم بتدوير البرنامج وانقر فوق الزر المفرد في النموذج. سيبدأ هذا العملية المراد تشغيلها في الخلفية.
نصائح
- تأكد من تشغيل كل شيء في الروتين الفرعي في الخلفية بمعزل عن غيرها. بدون استخدام تقنيات معالجة أكثر تقدمًا ، لا يمكن معرفة ما يحدث في أي وقت.
ما تحتاجه
- البصرية الأساسية