नहीं Cheeso, वहाँ इस तरह कोई सामान्य वस्तु पूल है। लेकिन यह एक अच्छा विचार है। मुझे लगता है कि यह विकसित करना बहुत आसान होगा। मुख्य बात यह एक थ्रेडेड वातावरण में अच्छी तरह से काम कर रही है।
मुझे लगता है कि यह एक दिलचस्प डिजाइन समस्या है।
- वस्तुओं के लिए एक केन्द्रीय पूल रखें: उदाहरण के लिए, इस Sever वर्ग हार्डवेयर -और- आप indivudual धागे वस्तुओं अक्सर तो आप यह कर सकता है दे देंगे पर पैमाने पर करने की जरूरत है, तो।
- प्रति थ्रेड पूल (एक कैश) रखें जो पॉप्युलेट होता है जब इसे थ्रेड के लिए पहली बार बुलाया जाता है, और जब यह खाली हो जाता है।
इस तरह, आप अधिकांश अनुरोधों के लिए प्रति-थ्रेड विवाद से बचते हैं।
विभिन्न परिचालन स्थितियों से आपको एक अलग डिज़ाइन का कारण बन जाएगा। उदाहरण के लिए, यदि ऑब्जेक्ट आवंटन दुर्लभ हैं या धागे की संख्या कम है, तो संग्रह के चारों ओर लॉक होने के लिए यह आसान हो सकता है। यह अच्छी तरह से स्केल नहीं करेगा, लेकिन इस मामले में, इसे करने की आवश्यकता होगी।
यदि आप कक्षा या इंटरफ़ेस को सही तरीके से डिज़ाइन करते हैं, तो आप अधिक जटिल परिदृश्यों को संभालने के लिए समय के साथ कार्यान्वयन को बदल सकते हैं।
ठीक है, यह काम करेगा। एक ऑब्जेक्ट पूल बहुत आसान हो सकता है।लेकिन फिर अतिरिक्त नब्बे जैसे हैं, एक बाध्य वस्तु आबादी (एक्स से कम नहीं, वाई से अधिक नहीं), नाम वस्तुओं, वस्तु गुण, उस तरह की चीज़। मैंने सोचा कि क्या किसी ने इसे पहले ही डिजाइन किया है और इन चीजों पर विचार किया है। – Cheeso
@ चेसियो - आप इसे अपने प्रश्न में जोड़ना चाहेंगे, क्योंकि यह प्रश्न को थोड़ा सा बदल देगा। –