मेरे पास कुछ मूल धागा है जिसे जावा में कॉल करने की आवश्यकता है। इसके लिए, मुझे AttachCurrentThread
का उपयोग करके थ्रेड को वीएम में संलग्न करने की आवश्यकता है। चूंकि यह कॉलबैक अक्सर होता है, इसलिए धागा शायद संलग्न रहना चाहिए। कॉलिंग AttachCurrentThread
कई बार ठीक है ("एक धागा है कि पहले से ही जुड़ा हुआ है संलग्न करने के लिए कोशिश कर रहा एक नहीं-op है।")क्या मुझे जेएनआई संलग्न संलग्न थ्रेड करना है?
,, मैं धागा बाहर निकलता से पहले DetachCurrentThread
कॉल करने के लिए है यह अपने आप हो जाएगा या यह भी नहीं है आवश्यक? अगर मुझे अलग करना है तो क्या होगा, लेकिन नहीं? क्या यह सिर्फ "रिसाव" होगा, या यह भी वीएम राज्य को दूषित कर सकता है?
मैंने जावा मूल इंटरफ़ेस विनिर्देश की जांच की है, लेकिन या तो इसे याद किया है, या यह वास्तव में निर्दिष्ट नहीं है।
मेरा प्रश्न विशेष रूप से विंडोज एक्सपी पर सूर्य जेडीके 6 पर लागू होता है।
डर्न, मैं हर समय जेडीके 5 जेएनआई स्पेक देख रहा था। "वीएम से अलग करना" अनुभाग जेडीके 6 दस्तावेज़ों में नया है। आपकी सहायताके लिए धन्यवाद! –
मेरी इच्छा है कि * क्यों * इसे DetachCurrentThread() को कॉल करना होगा। यदि मूल धागा एक डिमन के रूप में जुड़ा हुआ है, तो VM * संलग्न देशी धागे को समाप्त करने के लिए * नहीं * प्रतीक्षा करेगा। – technomage