का उपयोग करते समय मेमोरी रिसाव मेरे पास ईएफ का उपयोग करके एक बहुत ही सरल एप्लीकेशन है। लेकिन जब यह एक सप्ताह चलता है, तो स्मृति उपयोग भयानक होता है (पहले केवल 80 एमबी, एक सप्ताह के बाद 700 एमबी)। जब मैं अपने आवेदन को प्रोफाइल करने के लिए dotMemory का उपयोग करता हूं। मुझे लगता है कि हीप पीढ़ी 2 की याददाश्त हर समय बढ़ रही है।एंटिटी फ्रेमवर्क
मैं एक स्नैपशॉट प्राप्त करें, अंत में मिल एफई dbcontext का बरकरार रखा बाइट्स सबसे अधिक है।
मैं बहुत उलझन में हूँ। मेरा आवेदन इतना आसान है। कोड का नमूना:
protected CarbonBrushMonitorEntities _entities = new MYEntities();
public void Add(HistoryData data)
{
_entities.HistoryDatas.Add(data);
_entities.SaveChanges();
}
_entities
केवल नाम के पहले अक्षर एक बार प्रारंभिक समय में है, तो हर समय इस्तेमाल किया।
समारोह Add
अक्सर कहा जाता है, के बारे में 3 बार/सेकंड
मैं एक लंबे समय गूगल, और इस तरह के रूप में कुछ तरीकों की कोशिश:
_entities.Configuration.ValidateOnSaveEnabled = false;
_entities.Configuration.AutoDetectChangesEnabled = false;
_entities.Configuration.LazyLoadingEnabled = false;
लेकिन इन काम नहीं करते।
आप अपने ईएफ संदर्भ का जीवनकाल कैसे प्रबंधित करते हैं? क्या आपने कभी इसका निपटान/पुन: बना लिया है? – ken2k
@ ken2k प्रारंभ समय पर बनाते हैं, फिर हर समय उपयोग किया जाता है। कभी निपटान/पुन: निर्मित नहीं करें। क्योंकि मेरा एप्लिकेशन आर्किटेक्चर आईओसी और निर्भरता इंजेक्शन का उपयोग करता है। – yubaolee
ऐड विधि किस श्रेणी में है? – lloyd