इस पोस्ट में, हम Java में एक प्रोसेस और थ्रेड के बीच के अंतर को समझेंगे।
प्रक्रिया
-
यह निष्पादन में एक कार्यक्रम को संदर्भित करता है।
-
एक प्रक्रिया बनाने में अधिक समय लगता है।
-
इसे समाप्त होने में अधिक समय लगता है।
-
संदर्भों को बदलने में अधिक समय लगता है।
-
यह सिस्टम के अधिक संसाधनों की खपत करता है।
-
यह संचार के मामले में कम कुशल है।
-
यह एक अलग विशेषता है।
-
इसे भारी वजन प्रक्रिया के रूप में भी जाना जाता है।
-
एक प्रक्रिया से दूसरी प्रक्रिया में स्विच करते समय, यह एक ऑपरेटिंग सिस्टम में इंटरफ़ेस का उपयोग करता है।
-
यदि एक सर्वर प्रक्रिया अवरुद्ध हो जाती है, तो पिछली प्रक्रिया अनब्लॉक होने तक कोई अन्य सर्वर प्रक्रिया निष्पादित नहीं की जा सकती है।
-
इसका अपना प्रोसेस कंट्रोल ब्लॉक, स्टैक और एड्रेस स्पेस है।
थ्रेड
-
यह प्रक्रिया के खंड को संदर्भित करता है।
-
प्रक्रिया बनाने में कम समय लगता है।
-
समाप्त होने में कम समय लगता है।
-
संदर्भ बदलने में कम समय लगता है।
-
यह सिस्टम के कम संसाधनों की खपत करता है।
-
वे स्मृति भी साझा करते हैं।
-
इसे हल्के वजन की प्रक्रिया के रूप में भी जाना जाता है।
-
यह संचार में अधिक कुशल है।
-
एक थ्रेड से दूसरे थ्रेड में स्विच करने के लिए ऑपरेटिंग सिस्टम को कॉल करने की आवश्यकता नहीं होती है।
-
यह कर्नेल को बाधित नहीं करता है।
-
जब एक सर्वर थ्रेड ब्लॉक किया गया हो, तो दूसरा थ्रेड उसी कार्य पर चल सकता है।
-
यह अपने माता-पिता के प्रोसेस कंट्रोल ब्लॉक का उपयोग करता है।
-
यह अपने स्वयं के थ्रेड कंट्रोल ब्लॉक, स्टैक और कॉमन एड्रेस स्पेस का उपयोग करता है।