Hatalar, hatalar, sorular - sayfa 1593
Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Sihirli senaryo zamanı geri alır ;-)
Ürünün geri çağrılmasıyla ilgili akıllı mesajda, LC'de ve web sitesinin üst kısmında cl yok.
Hata değil ama paylaşmak zorundayım
yazı
Derleyici bir uyarı verir
geçersiz tarih *****.mq4 115 46
Ayrıca tarihin doğruluğu için dize tarihlerini kontrol eder, şok oldum) (30 Haziran gün)
Görünüşe göre bu kimseyi rahatsız etmiyor, ama yine de tekrar yazacağım.
Gerçek görev: toplam boyutu yaklaşık %100 boş belleğe sahip diziler oluşturun, bunları hızla sayılarla doldurun, hesaplamalar yapın ve serbest bırakın.
Boş hafıza miktarını almaya çalışıyorum
sonuç: 23987 MB ve 12141 MB fiziksel belleğim var, yani. iki kat daha küçük.
Bu rakamın Marslılar için olduğunu anlıyorum, ancak yine de bunu test etmek için bir senaryo yazıyorum ve inanıyorum:
Düzenli bir sonuç alıyorum - dizi3 dizisini dağıtmak imkansız çünkü hafıza bitti.
Ardından, şu anda ne kadar mevcut olduğunu belirttiğim satırın yorumunu kaldırıyorum:
Bundan sonra, komut dosyası başarıyla çalışır.
Geliştiriciler için can sıkıcı olmak istemiyorum, ancak bellek yönetimi için ne kadar kullanılabilir olduğunu bilmek önemlidir.
Lütfen bunu TerminalInfoInteger aracılığıyla bilmeyi mümkün kılın.
Çoğu durumda kullanılabilir belleğin tamamını alamayacağınızın farkında mısınız?
Bellek parçalanması diye bir şey var. Tüm belleği 5 parçaya bölmeye karar verdiniz - ancak sistemde ihtiyacınız olan boyutta tek bir sürekli bellek parçası yok
Çoğu durumda kullanılabilir belleğin tamamını alamayacağınızın farkında mısınız?
Bellek parçalanması diye bir şey var. Tüm belleği 5 parçaya bölmeye karar verdiniz - ancak sistemde ihtiyacınız olan boyutta tek bir sürekli bellek parçası yok
1. Önce TERMINAL_MEMORY_AVAILABLE parametresinin fiziksel olarak ne anlama geldiğini bulabilir misiniz?
2. Parçalara gelince, bunun programcı tarafından değil, Windows bellek yöneticisi tarafından yapılması gerektiğini düşünüyorum.
Şu anda ne kadar kullanabileceğimi bilmek benim için önemli, örneğin mevcut belleğin %50'sini kullanmak istiyorum.
Diğer bir gerçek zorluk ise CopyTicks isteğidir. Kullanılabilir bellekten daha fazla onay talep edersek, 'bellek yetersiz' olur.
Diğer bir gerçek zorluk ise CopyTicks isteğidir. Kullanılabilir bellekten daha fazla onay talep edersek, 'bellek yetersiz' alırız.
bir seçenek olarak, verileri bir dosyaya yükleyin ve oradan gerekli segmentleri alın
Bu benim için yavaş. Her şeyi hafızadan yapmak istiyorum. Aslında bu şu anda yapılıyor, sadece GlobalMemoryStatusEx'i aramanız ve mevcut olanın boyutunu öğrenmeniz gerekiyor.
Desteklerim. Bu sorun, yetenekleri hakkında başlangıçta hiçbir şey bilmediğiniz bulut aracılarını optimize ederken özellikle akuttur. Orada, MQL veya WinApi aracılığıyla gerçek kullanılabilir bellek miktarını belirlemek imkansızdır (çünkü dll çağrıları yasaktır).
TERMINAL_MEMORY_AVAILABLE'ın pratik anlamının ne olduğu gerçekten açık değil mi? Ondan ne sıcak ne de soğuk değilsek neden tanıtıldı?