| 
  • If you are citizen of an European Union member nation, you may not use this service unless you are at least 16 years old.

  • You already know Dokkio is an AI-powered assistant to organize & manage your digital files & messages. Very soon, Dokkio will support Outlook as well as One Drive. Check it out today!

View
 

thread

Page history last edited by PBworks 16 years, 5 months ago

 

Threads
 
هي طريقة تمكن الكمبيوتر من تنفيذ برنامج باكثر من شكل في نفس الوقت  (أي أن البرنامج يمكن تنفيذه بأكثر ن طريقه او استخدام في نفس الوقت)
بمعنى ان كلthread يقوم بتسلسل تنفيذ مختلف (على الاقل كل process تمتلك threadواحد اي يتم تنفيذها بشكل واحد)
 
ومن اهم مايميز Threads:
 
1) أنها تحافظ على موارد النظام ومايفسر ذلك هي خاصيتها في مشاركة الموارد بمعنى ان جميع threadالتابعة لprocess (برنامج نشط) تتشارك في معظم الموارد الخاصة بها مثل
Heap)dynamic allocated memory)
Static data
Code
ولكنها تمتلك مايميزها عن غير ها بمعنى ان كل thread تمتلك النsخة الخاصة بها من كل مايلي
Stack
Program counter
Stack pointer
2) عملية انشاء وإنهاء threadاسرع من عمل نسخ كاملة من process عن طريق استخدام fork()
3)عملية الاتصال بينthreads اسهل واسرع من عملية الاتصال بين process لأن threads تتشارك في نفس address space
 
 ومن أبرز سلبيات thread :
 
1) أبرز السلبيات التي قد تواجهنا هي احتمالية حصول مايعرف بdead lock والتي يمكن شرحها بشكل مبسط بالمثال التالي
 لوكان لدينا thread 1 و thread 2  واحتاجت thread 1 الى احد الموارد التي تمتلكها فيهذه اللحظه   thread 2
بالتالي سيتم تنفيذ ايقافها الى ان تحصل على هذه الموارد ولكن في نفس اللحظة  كانت thread 2 تحتاج موارد تمتلكها thread 1 ممايعني انها ستوفق تنفيذها الى ان تحصل على هذه الموارد
اي ان كلا threads ستتوقف لتنتظر الاخرى.
 
2)blocking
وهي توقف thread  عن تنفيذ الاوامر نتيجة انتظارها system call result والتي بدورها قد تكون حدث فيها خطأ ولكنها تحتاج لوقت طويل ليعلم thread بذلك

Comments (0)

You don't have permission to comment on this page.