14-10-12, 05:18 PM
ال Priority :
تحدد ال Priority أولوية التنفيذ عندما يتم ادخال ال threads على البروسيسور ، حيث ان ال thread ذو الاولوية الأعلى يحظى بعدد مرات تنفيذ ، لتقريب المفهوم نفترض ان لدينا
- مهمة 1 اولوية قصوى .
- مهمة 2 اولوية قصوى .
في هذه الحالة يتم ادخال المهمة 1 للبروسيسور ، ثم 2 ، ثم 1 وهكذا .
أما في حال كون مهمة 2 ذات اولوية اقل ، يكون الأمر بالشكل التالي :
المهمة 1 ، المهمة 1 ، المهمة 1 ، المهمة 2 ، المهمة 1 ، المهمة 1 ، المهمة 1 ، المهمة 2 ... وهكذا حتى الانتهاء من احدهما .
ليس هذا مكان شرح الجوريزمات البروسيسور ، إنما لو أردت الزيادة يمكنك البدء من هنا ، حيث تجد عدة انواع من ال scheduling .
http://en.wikipedia.org/wiki/Scheduling_%28computing%29
نعود مرة أخرى ، لتحديد Priority أي مهمة لدينا نستخدم ال enum التالي :
ويصبح الكود بالشكل التالي مثلاً :
قبل البعد عن المواضيع الاساسية ، لا تنسى ان بامكانك استخدام sleep لايقاف التنفيذ لمدة ، supponse لايقاف مؤقت ... الخ من النقاط التي بدأنا بها شرحنا لهذا الدرس .
يتبع ...
تحدد ال Priority أولوية التنفيذ عندما يتم ادخال ال threads على البروسيسور ، حيث ان ال thread ذو الاولوية الأعلى يحظى بعدد مرات تنفيذ ، لتقريب المفهوم نفترض ان لدينا
- مهمة 1 اولوية قصوى .
- مهمة 2 اولوية قصوى .
في هذه الحالة يتم ادخال المهمة 1 للبروسيسور ، ثم 2 ، ثم 1 وهكذا .
أما في حال كون مهمة 2 ذات اولوية اقل ، يكون الأمر بالشكل التالي :
المهمة 1 ، المهمة 1 ، المهمة 1 ، المهمة 2 ، المهمة 1 ، المهمة 1 ، المهمة 1 ، المهمة 2 ... وهكذا حتى الانتهاء من احدهما .
ليس هذا مكان شرح الجوريزمات البروسيسور ، إنما لو أردت الزيادة يمكنك البدء من هنا ، حيث تجد عدة انواع من ال scheduling .
http://en.wikipedia.org/wiki/Scheduling_%28computing%29
نعود مرة أخرى ، لتحديد Priority أي مهمة لدينا نستخدم ال enum التالي :
كود :
public enum ThreadPriority
{
AboveNormal,
BelowNormal,
Highest,
Idle,
Lowest,
Normal, // Default value.
TimeCritical
}كود :
t1.Priority = System.Threading.ThreadPriority.Highest;قبل البعد عن المواضيع الاساسية ، لا تنسى ان بامكانك استخدام sleep لايقاف التنفيذ لمدة ، supponse لايقاف مؤقت ... الخ من النقاط التي بدأنا بها شرحنا لهذا الدرس .
يتبع ...
