أنت غير متصل حاليًا، وفي انتظار الإنترنت الخاص بك ليقوم بإعادة الاتصال

كيفية إرسال عنصر عمل إلى تجمع مؤشرات الترابط باستخدام Visual C#

هام: تمت ترجمة هذا المقال باستخدام برنامج ترجمة آلية لشركة مايكروسوفت بدلاً من الاستعانة بمترجم بشري. تقدم شركة مايكروسوفت كلاً من المقالات المترجمة بواسطة المترجمين البشر والمقالات المترجمة آليًا وبالتالي ستتمكن من الوصول إلى كل المقالات الموجودة في قاعدة المعرفة الخاصة بنا وباللغة الخاصة بك. بالرغم من ذلك، فإن المقالة المترجمة آليًا لا تكون دقيقة دائمًا وقد تحتوي على أخطاء إملائية أو لغوية أو نحوية، مثل تلك الأخطاء الصادرة عن متحدث أجنبي عندما يتحدث بلغتك. لا تتحمل شركة مايكروسوفت مسئولية عدم الدقة أو الأخطاء أو الضرر الناتج عن أية أخطاء في ترجمة المحتوى أو استخدامه من قبل عملائنا. تعمل شركة مايكروسوفت باستمرار على ترقية برنامج الترجمة الآلية

315460
تشير هذه المقالة إلى مساحة الاسم Microsoft .NET Framework فئة مكتبة التالية:
  • System.Threading

في هذه المهمة

الموجز
يوضح هذا المقال خطوة بخطوة حول كيفية إرسال أسلوب في تجمع مؤشرات الترابط للتنفيذ.

في بيئة .NET لدى كل عملية تجمع مؤشرات ترابط التي يمكن استخدامها لتشغيل أساليب بشكل غير متزامن.

back to the top

متطلبات


توضح القائمة التالية الأجهزة الموصى بها برامج البنية الأساسية للشبكة و حزم الخدمات المطلوبة:
  • Microsoft Visual Studio .NET أو Microsoft Visual Studio 2005
تفترض هذه المقالة كنت معتاداً على المواضيع التالية:
  • Visual C# لغة البرمجة
back to the top

إنشاء Visual C# تطبيق الذي يستخدم تجمع مؤشر الترابط

  1. بدء تشغيل Microsoft Visual Studio .NET أو Microsoft Visual Studio 2005.
  2. إنشاء مشروع تطبيقات Visual C# لـ Windows جديد يسمى PoolDemo.
  3. استخدم مربع الأدوات لإضافة عنصر تحكم زر إلى النموذج. الاسم الافتراضي لعنصر التحكم زر هو button1.
  4. انقر بزر الماوس الأيمن فوق النموذج ثم انقر فوق عرض التعليمات البرمجية.
  5. لصق التوجيه باستخدام التالية بعد توجيهات باستخدام الموجودة ولكن قبل تصريح مساحة اسم PoolDemo:
    using System.Threading;					
  6. التبديل إلى طريقة العرض "تصميم" ثم انقر نقراً مزدوجاً فوق button1. قم بلصق التعليمة البرمجية التالية في معالج الأحداث button1_Click:
    private void button1_Click(object sender, System.EventArgs e){	WaitCallback wcb = new WaitCallback(GetSysDirSize);	try	{		ThreadPool.QueueUserWorkItem(wcb);		MessageBox.Show("The work item has been placed on the queue");	}	catch (Exception ex)	{		MessageBox.Show("Error: " + ex.Message);	}}					
  7. قم بلصق التعليمة البرمجية التالية داخل نص الفئة Form1. أسلوب GetSysDirSize بحساب العدد الإجمالي للبايتات التي يتم تخزينها في دليل النظام. المكالمات GetSysDirSize أسلوب آخر يسمى DirSize لتنفيذ العملية الحسابية.

    ملاحظة: هذه المهمة قد تستغرق بعض الوقت لتشغيل.
    private void GetSysDirSize(object state){	long total_length = DirSize(Environment.SystemDirectory);	this.Text = total_length.ToString();}private long DirSize(string path){	long sz = 0;	System.IO.DirectoryInfo d = new System.IO.DirectoryInfo(path);		// List files.	foreach(System.IO.FileInfo f in d.GetFiles())	{		sz += f.Length;	}	// Recurse into directories.	foreach(System.IO.DirectoryInfo dx in d.GetDirectories())	{		sz += DirSize(dx.FullName);	}	return sz;}					
back to the top

اختبار في نموذج

  1. اضغط CTRL + F5 لتشغيل التطبيق.
  2. عند ظهور "النموذج" ، انقر فوق الزر. عند ظهور مربع رسالة تم وضع عنصر العمل في قائمة الانتظار، انقر فوق موافق لإغلاق مربع الرسالة والعودة إلى النموذج الرئيسي. يتم عرض حجم الملف الإجمالي في دليل النظام بعد مهلة قصيرة في التسمية توضيحية النموذج. يعتمد طول التأخير على سرعة الكمبيوتر وعدد الملفات في دليل النظام. يأخذ الحساب أحجام الملفات مكان على مؤشر ترابط في تجمع مؤشرات الترابط.
back to the top

تحذير: تمت ترجمة هذا المقال تلقائياً

خصائص

رقم الموضوع: 315460 - آخر مراجعة: 12/11/2006 20:59:14 - المراجعة: 2.3

  • Microsoft Visual C# 2005 Express Edition
  • Microsoft Visual C# .NET 2002 Standard Edition
  • kbmt kbhowtomaster kbsample kbthread KB315460 KbMtar
تعليقات