Hatalar, hatalar, sorular - sayfa 2795

 
Artyom Trishkin :
Bence listedeki tüm işaretçileri ekleyin. Terminal alt sisteminin kendisi, CArrayObj listesinde bulunan işaretçiler gibi nesneleri siler.

Burada potansiyel bir bellek sızıntısı var.

Bir bellek sızıntısı varsa ( nesne işaretçi tarafından silinmedi ), tamamlandıktan sonra günlüğe hangi ve kaç nesnenin silinmediğini ve ne kadar belleğin serbest bırakılmadığını yazar. Ama bende öyle bir şey yoktu. Nesneler silinir, ancak grafik nesnelerinin tümü silinmez.

Rashid Umarov , sorunun, grafiğin, grafik nesnelerini silmek için bu kadar çok sayıda komutu işlemek için zamanının olmaması olduğunu fark etti! Bellek sızıntıları ne durumda?
Документация по MQL5: Основы языка / Типы данных / Указатели объектов
Документация по MQL5: Основы языка / Типы данных / Указатели объектов
  • www.mql5.com
//| Script program start function                                    | //|  Объекты всегда передаются по ссылке                             | //| Передача массива объектов                                        | //| Передача массива указателей на объект                            |
 
Mihail Matkovskij :

Bu sadece örnekte. Üzerinde çalıştığım göstergede isimler oldukça karmaşık. Ve sadece gösteri için bir örnek yaptım.

Öneklemenin nesi yanlış? Belki de önce bunu kontrol etmeliydin?

 
Mihail Matkovskij :

Bir bellek sızıntısı varsa ( nesne işaretçi tarafından silinmedi ), tamamlandıktan sonra günlüğe hangi ve kaç nesnenin silinmediğini ve ne kadar belleğin serbest bırakılmadığını yazar. Ama bende öyle bir şey yoktu. Nesneler silinir, ancak grafik nesnelerinin tümü silinmez.

Rashid Umarov , sorunun, grafiğin, grafik nesnelerini silmek için bu kadar çok sayıda komutu işlemek için zamanının olmaması olduğunu fark etti! Bellek sızıntıları ne durumda?
"Potansiyel" yazdım. Bu, daha sonra tekrar bakacağınız anlamına gelir. Hemen daha iyi.
 
Alexey Viktorov :

Öneklemenin nesi yanlış? Belki de önce bunu kontrol etmeliydin?

Göstergemdeki nesneleri adlandırmak için tüm algoritmaları yeniden yapmak benim için sıkıcı ve işe yarayıp yaramayacağını bilmiyorum... Ve bir sürü kod var, inanın bana.

Belki başka bir yolu vardır. Örneğin, tüm nesneler için önce ObjectDelete'i çağırın ve ardından bir gecikmeli çağrıdan sonra ObjectFind'ı çağırın. Ve silinmeyen nesneleri tekrar silin. Ve böylece sayıları 0'a eşit olana kadar. Ancak, Uyku işlevi orada çalışmıyorsa, göstergede nasıl gecikme yapılır?

Artyom Trishkin :
"Potansiyel" yazdım. Bu, daha sonra tekrar bakacağınız anlamına gelir. Hemen daha iyi.
Bu sadece bir örnektir ve bellek sızıntılarıyla ilgili değildir. Göstergede her şey farklı şekilde düzenlenmiştir.
 
Mihail Matkovskij :

Göstergemdeki tüm nesne adlandırma algoritmalarını yeniden yapmak benim için sıkıcı. Ve bir sürü kod var, inan bana.

Belki başka bir yolu vardır. Örneğin, tüm nesneler için önce ObjectDelete'i çağırın ve ardından bir gecikmeli çağrıdan sonra ObjectFind'ı çağırın. Ve silinmeyen nesneleri tekrar silin. Ve böylece sayıları 0'a eşit olana kadar. Ancak, Uyku işlevi orada çalışmıyorsa, göstergede nasıl gecikme yapılır?

Çok doğru bir yaklaşım. Her şeyi değiştirmekten bıktım, geliştiricilerin her şeyi sıkıcı bir şekilde değiştirmesine izin verin. Kendi örneğinizi kontrol etmenizi ve sonucu açıklamanızı kim engelliyor? Bunu yapmak bile istemezsiniz, “Bırak denesinler. Beklesem iyi olur…” © V. Vysotsky.

 
Alexey Viktorov :

Çok doğru bir yaklaşım. Her şeyi değiştirmekten bıktım, geliştiricilerin her şeyi sıkıcı bir şekilde değiştirmesine izin verin. Kendi örneğinizi kontrol etmenizi ve sonucu açıklamanızı kim engelliyor? Bunu yapmak bile istemezsiniz, “Bırak denesinler. Beklesem iyi olur…” © V. Vysotsky.

Bunu, geliştiriciler benim için bir şeyler yapsınlar diye söylemedim! Yalnızca nesne adlandırma algoritmasının kendisi,ObjectDeledeAll işlevine yapılan sonraki bir çağrı için tasarlanmamıştır. Bu yalnızca basit adlandırma "trend" örneğindedir.

 
Mihail Matkovskij :

Bunu, geliştiriciler benim için bir şeyler yapsınlar diye söylemedim!

Direkt söylemediler ama var olmayan bir bug ile ilgili mesaj bu şekilde okunur.

 
Alexey Viktorov :

Direkt söylemediler ama var olmayan bir bug ile ilgili mesaj bu şekilde okunur.

Başka hangi hata? Rashid Umarov her şeyi açıkladı ve ben onu anladım. Nedense, burada mesajlarda ne yazdığını anlamadınız. :)

 
Mihail Matkovskij :

Başka hangi hata?

Hakkında

Michael Matkovskij :

Bu hatanın oluştuğu kaynağı yaptım:

 
Alexey Viktorov :

Hakkında

Forumda yapacak başka bir işin yok Alexey, mesajlarımı çarpıtıp benim adıma geliştiricilere iddia gibi görünecek şekilde mi? ... Merak ediyorum senin açından böylesine garip bir "coşkuya" ne sebep oldu? Yeni başlayanlar için burada saçma sapan şeyler yapmaktansa sorularına ilgili branşlarda yardımcı olunması daha iyi olur.   çalışmak!...