2010-11-18 11 views
5

मान लीजिए कि मुख्य धागा एक नया थ्रेड टी 1 फैल रहा है, टी 1 पर चलने वाला मेरा कोड मुख्य धागे की थ्रेड आईडी (सी # का उपयोग करके) कैसे ढूंढ सकता है?.NET क्या पैरेंट थ्रेड आईडी प्राप्त करने का कोई तरीका है?

संपादित करें:
मैं नए धागे के निर्माण को नियंत्रित नहीं करता हूं। तो मैं धागे को किसी भी पैरामीटर पास नहीं कर सकता।

धन्यवाद।

+2

मूल रूप से Win32 के तहत एक प्रक्रिया में सभी धागे बराबर हैं, कोई "मुख्य धागा" नहीं है। .NET पृष्ठभूमि धागे की परिशोधन जोड़ता है, लेकिन अभी भी कोई "मुख्य धागा" नहीं है। – Richard

+0

@ रिचर्ड सुधार के लिए धन्यवाद। –

उत्तर

9

आप नहीं कर सकते।

फिर भी आप सोच सकते हैं:

  1. उपसर्ग माता पिता धागा
  2. से धागा आईडी के साथ नया थ्रेड का नाम विधि आपको लगता है कि अंडे देने के लिए चाहते हैं पर एक निर्माता बनाएं से धागा आईडी की आवश्यकता है पैरेंट
0

मुझे नहीं पता कि आपके पास ऐसा करने के लिए कोई संपत्ति है या नहीं, लेकिन आप अपने थ्रेड में एक नया पैरामीटर जोड़ सकते हैं। यह सबसे आसान तरीका होगा जिसके बारे में मैं सोच सकता हूं ...

2

यदि आपके पास केवल दो धागे हैं और दूसरा धागा पृष्ठभूमि धागा है तो आप प्रक्रिया में सभी धागे की गणना कर सकते हैं और Thread.IsBackground property पढ़कर पृष्ठभूमि धागे को खत्म कर सकते हैं। बहुत सुंदर नहीं है लेकिन शायद आपको क्या चाहिए?

आप foreground and background threads on MSDN के बारे में अधिक पढ़ सकते हैं।

संबंधित मुद्दे

 संबंधित मुद्दे