2011-03-22 11 views
5

मैं जावा एप्लिकेशन विकसित कर रहा हूं जिसमें कुछ धागे हैं। मैं थ्रेड आईडी में कंसोल में प्रिंट करता हूं, उदाहरण के लिए 17, 18, 1 9, और इसी तरह। लेकिन जब मेरे पास डिबग परिप्रेक्ष्य खुला है, तो मेरे पास यह "डीबग" विंडो (सबसे ऊपर बाएं विंडो) है, जो मुझे वर्तमान धागे दिखाती है, लेकिन वे [थ्रेड -2], [थ्रेड -3] का उपयोग करती हैं। संख्याएं थ्रेड आईडी से मेल नहीं खाती हैं।ग्रहण डीबग परिप्रेक्ष्य में धागे की पहचान कैसे करें?

क्या कोई तरीका है इसलिए मैं "डीबग" विंडो में दिखाए गए थ्रेड पर अपने कंसोल में थ्रेड आईडी को सहसंबंधित कर सकता हूं?

उत्तर

6

मुझे ऐसा करने का कोई तरीका नहीं पता।

हालांकि, एक और दृष्टिकोण है। उन थ्रेड नामों का उपयोग आपके द्वारा उपयोग किए जा रहे थ्रेड कन्स्ट्रक्टर द्वारा स्वचालित रूप से जेनरेट किया जाता है। हालांकि, Thread.setName() नामक एक विधि है जो आपको थ्रेड के नाम को बदलने की अनुमति देती है। आप थ्रेड के नामों को बदलने के लिए बनाए गए थ्रेड के नाम बदलने के लिए संभवतः अपने एप्लिकेशन को ट्वीक कर सकते हैं।

3

ग्रहण में इस तरह के रूप कुछ भी नहीं है, लेकिन अगर आप जो धागा खोजना चाहते हैं, तो कोड पर डिबगिंग बिंदु जोड़ सकते हैं और फोन

Thread.currentThread(); 

धागा है, जो वर्तमान में क्रियान्वित कर रहा है पता लगाने के लिए।

इस धागे को और अधिक जानकारी के लिए देखें। थ्रेड ID मुद्रण के

http://dev.eclipse.org/mhonarc/lists/platform-debug-dev/msg00845.html

1

इसके बजाय, आप धागा नाम मुद्रित कर सकते हैं। Thread.currentThread().getName()। वह नाम डीबगर में दिखाया गया है।

+0

हालांकि स्टीफन सी के उत्तर के समान, मेरा मानना ​​है कि इसे सही उत्तर के रूप में चिह्नित किया जाना चाहिए क्योंकि यह अधिक संक्षिप्त है। –

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