मैं लिनक्स चला रहा हूं, और मैं साझा लाइब्रेरी (.so) में समांतर फ़ंक्शन कॉल करने में सक्षम होना चाहता हूं, दुर्भाग्य से थ्रेडसेफ नहीं है (मुझे लगता है कि इसमें वैश्विक डेटास्ट्रक्चर हैं)।साझा लाइब्रेरी की कई प्रतियां लोड करें
प्रदर्शन कारणों से, मैं फ़ंक्शन कॉल को म्यूटेक्स में लपेटना नहीं चाहता हूं।
मैं 4 थ्रेड कहने के लिए क्या करना चाहता हूं, और उसी लाइब्रेरी की 4 प्रतियों को प्रक्रिया मेमोरी में लोड करना चाहता हूं। प्रत्येक थ्रेड फ़ंक्शन को लाइब्रेरी की अपनी प्रति में कॉल करता है।
दुर्भाग्य से, dlopen मुझे किसी भी पुस्तकालय के एक और उदाहरण को लोड करने की अनुमति नहीं देता है।
क्या किसी को भी किसी भी विधि के बारे में पता है जो मुझे पुस्तकालय को एक से अधिक बार लोड करने की अनुमति देगा? (.so फ़ाइल की 4 प्रतियां बनाने के अलावा, प्रत्येक एक अलग नाम के साथ)
उन लोगों के लिए जिन्हें उदाहरण की आवश्यकता है, तुलना [लागू] [https://github.com/ikoryakovskiy/not_threadsafe_test) लागू की गई। – Ivan