क्रिस्टल बॉल का कहना है कि डीबग> विंडोज> थ्रेड विंडो इन धागे को ntdll.dll!TppWorkerThread
पर दिखाती है। इसे स्वयं देखने के लिए Microsoft Symbol Server को सक्षम करना सुनिश्चित करें, उपकरण> विकल्प> डिबगिंग> प्रतीकों का उपयोग करें।
यह वीएस2013 में भी होता है, इसलिए यह निश्चित रूप से नई वीएस2015 डायग्नोस्टिक सुविधाओं के कारण नहीं होता है, @ एडम का अनुमान सही नहीं हो सकता है।
TppWorkerThread() थ्रेड-पूल थ्रेड के लिए एंट्री पॉइंट है। जब मैंने डीबग> न्यू ब्रेकपॉइंट> फ़ंक्शन ब्रेकपॉइंट के साथ इस फ़ंक्शन पर ब्रेकपॉइंट सेट किया।
[email protected]() Unknown
ntdll.dll!LdrpMapDllNtFileName() Unknown
ntdll.dll!LdrpMapDllSearchPath() Unknown
ntdll.dll!LdrpProcessWork() Unknown
[email protected]() Unknown
ntdll.dll!TppWorkpExecuteCallback() Unknown
ntdll.dll!TppWorkerThread() Unknown
[email protected]@12() Unknown
ntdll.dll!__RtlUserThreadStart() Unknown
> [email protected]() Unknown
जाहिर लोडर Windows 10 पर ThreadPool उपयोग कर रहा है DLLs लोड करने के लिए: जब 2 ThreadPool धागे को क्रियान्वित करने शुरू कर दिया मैं 1 ThreadPool धागे के लिए इस स्टैक ट्रेस कब्जा करने के लिए भाग्यशाली। यह निश्चित रूप से नया है :) इस बिंदु पर मुख्य धागा लोडर में काम कर रहा है, काम पर समेकन।
तो विंडोज 10 प्रक्रिया शुरू करने के लिए कई कोर का लाभ उठा रही है। बहुत अधिक सुविधा, एक बग नहीं :)
स्रोत
2016-01-16 11:26:14
यहां विंडोज और अंतहीन लूप के बारे में मजा आता है ... –
शायद विंडोज़ 10 पर डिफ़ॉल्ट रूप से थ्रेड पूल प्राप्त करें। –
मैं 'CreateThread पर ब्रेकपॉइंट डालकर शुरू करूंगा '। ध्यान दें कि नाम से ब्रेकपॉइंट्स को विंडबग का उपयोग करना बहुत आम है, जबकि विजुअल स्टूडियो डीबगर में यह संभव है लेकिन कुछ असामान्य मेनू कमांड सीखना आवश्यक है। –