MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 593

 

Başka bir soru, test cihazı, birkaç zaman diliminden veri kopyalayan Uzman Danışmanlarla ne kadar iyi çalışıyor?

Doğruysa, test ederken hangi TF'nin seçilmesi önemlidir?

 
Juer :

Test başlatıldığında bellek yetersiz hatası oluşur (başlamaz). Nasıl tedavi edilir?

Terminali yeniden başlattıktan sonra test başlar ve birkaç testten sonra tekrar bellek yetersiz kalır.

Geçmişteki görünür ve çubukların sayısını azaltın (yalnızca bu durumda, alıntıların derin geçmişi kaybolacaktır, bu nedenle neyin daha önemli olduğuna karar vermek size kalmış). Terminalde çok fazla grafiğin açık olması da mümkündür. Bir kullanıcı, 1 milyon çubuk geçmiş derinliğine sahip yaklaşık 50 çizelge açar. Artık yeterli bellek yok.

 
Artyom Trishkin :

Burada size kesin cevabı verebilirler.

Kodda on binlerce satır var. Hata günlüklerinde yalnızca xxx silinmemiş nesne testi tamamlandıktan sonra kaldı. Ortalama bir yerde 9 test yapabilirim ve ardından hafıza yetersiz hatası.

 
Ihor Herasko :

Geçmişteki görünür ve çubukların sayısını azaltın (yalnızca bu durumda, alıntıların derin geçmişi kaybolacaktır, bu nedenle neyin daha önemli olduğuna karar vermek size kalmış). Terminalde çok fazla açık grafik olması da mümkündür. Bir kullanıcı, 1 milyon çubuk geçmiş derinliğine sahip yaklaşık 50 çizelge açar. Artık yeterli bellek yok.

Hayır, hiçbir şeye yardımcı olmaz veya etkilemez. Bir grafikle test ediyorum, geçmişi minimuma indirdim. Ve tekrar ediyorum, test edildi, ancak sınırlı sayıda. 10. testte bir yerde, bellek yetersiz hatası çıkıyor.

 
Juer :

Kodda on binlerce satır var. Hata günlüklerinde yalnızca xxx silinmemiş nesne testi tamamlandıktan sonra kaldı. Ortalama bir yerde 9 test yapabilirim ve ardından hafıza yetersiz hatası.

Bunların hepsi bellek sızıntıları. Nesnelerin her biri için ayrılan belleğin delete komutuyla boşaltılmasıyla bunların ortadan kaldırılması gerekir.

 
Ihor Herasko :

Bunların hepsi bellek sızıntıları. Nesnelerin her biri için ayrılan belleğin delete komutuyla boşaltılmasıyla ortadan kaldırılmalıdır.

Açıklığa kavuşturmak için: OnDeinit() içindeki tüm nesneleri silin - grafik nesneleri, varsa sınıf nesneleri ...

 
Artyom Trishkin :

Açıklığa kavuşturmak için: OnDeinit() içindeki tüm nesneleri silin - grafik nesneleri, varsa sınıf nesneleri ...

Orada görünmezlerse onları orada nasıl kaldırabilirim ...

Bir nesneler koleksiyonum var (CARrayObj'den miras alınan bir sınıf), bunlar sırayla aynı nesnelerin listesine ve bunlar zaten global düzeyde görülebilen son nesneye (ayrıca CArrayObj'den miras alınan) ekleniyor ve OnDeinit'te sildiğim... Ve onları sildiğimde silmiyorum, program çalışırken onlara ihtiyacım var.

 
Juer :

Orada görünmezlerse onları orada nasıl kaldırabilirim ...

Bir nesneler koleksiyonum var (CARrayObj'den miras alınan bir sınıf), bunlar sırayla aynı nesnelerin listesine ve bunlar zaten global düzeyde görülebilen son nesneye (ayrıca CArrayObj'den miras alınan) eklenir ve OnDeinit'te sildiğim... Ve onları sildiğimde silmiyorum, program çalışırken onlara ihtiyacım var.

Yarattığınız nesnelerin görünmez olması söz konusu değildir.

Belirli bir işlevden mevcut olmayabilirler, ancak nesnenin kendisinde mevcut olmalıdırlar. Bu nesnede belleği temizlemeniz gerekir. Bu genellikle sınıfın yıkıcısında yapılır. Emin olmak için, Baskıları tüm yıkıcılara ve OnDeinit'e yerleştirin.

 
Lütfen kim bilir, bana bir grafikte OCT panelinin varlığını belirlemenin bir yolunu söyleyin
 
Stanislav Dray :
Lütfen kim bilir, bana bir grafikte OCT panelinin varlığını belirlemenin bir yolunu söyleyin.

OST paneli nedir?