Obur bellek RAM MT5, büyük dosyaları okuma / yazma ile ilgili sorunlar - sayfa 8

 
Korku
 
Алексей Тарабанов :
Korku

Duygular, bir kişinin olup bitenlere karşı tutumunu anlamak için çok önemlidir. Ancak, bu kadar güçlü duyguların ifade edildiğini anlamak kötü olmaz mıydı?

 

Olayı biraz hafifletmeme izin verin. Korkuyla ilgili bir şakayı hatırladım.

Bir geneleve bir ziyaretçi gelir. Ona bir kız verirler, yukarı çıkarlar. Bir dakika sonra kız koşarak odadan çıkar ve "Korku, dehşet!" diye bağırır. kaçar. Tamam, ona ikinci bir tane ver. Odaya giriyor, bir dakika sonra "Korku, dehşet!" diye bağırarak dışarı çıkıyor. hem de kaçar. Ama müşteriye hizmet etmelisin. Sonra hostes kendisi ona gider. Bir saat geçer. Sendeleyerek dışarı çıkıyor. Diyor ki: "Eh, korku ... Ama Korku-korku değil!". )))

 
Aleksey Vyazmikin :

Kontrol ettiniz ve hızlanma bulamadınız mı? Yoksa burada herkesi yanılttığımı mı söylüyorsunuz?

Ve kontrol edilmesine bile gerek yok. Böyle bir değişiklikten hemen hemen hiçbir ivme olmayacaktır, çünkü matematikte olduğu gibi, "terimlerin yerlerindeki bir değişiklikten toplam değişmez." Yani kafa karışıklığı açıktır.

Alexey Vyazmikin :

Konuyu dikkatli okuyor musun? Fonksiyon şeklinde hazır bir çözüme verdiğim cevabı gördünüz mü? Başka bir çözümünüz var mı? OOP nedir bilmiyorum tabi ki şubeyi dikkatli okuyan biri bunu hemen fark eder...

Her zaman "başka bir çözüm" vardır. Ancak bu durumda "diğer çözüm" bilgi eksikliğinden dolayı mevcut değildir.

Alexey Vyazmikin :

Ücretli / ücretsiz hakkında - bu zaten saçma, ücretli çözümlerin ücretsiz olandan daha iyi bir çözüm yapmadığını gösterdim ve yine paradan bahsediyorsunuz ...

Hiçbir şey gösterilmedi. Ücretli çözüm işini iyi yapıyor, ancak kötüye kullanılıyor.

Ya ödersiniz ya da okursunuz - modern dünyanın kanunu.

Tam bir kargaşa ve kaos.

 
Roffild :

Ve kontrol edilmesine bile gerek yok. Böyle bir değişiklikten hemen hemen hiçbir ivme olmayacaktır, çünkü matematikte olduğu gibi, "terimlerin yerlerindeki bir değişiklikten toplam değişmez." Yani kafa karışıklığı açıktır.

Nasıl bu kadar özgüvenli olabiliyorsun...

Roffield :

Her zaman "başka bir çözüm" vardır. Ancak bu durumda "diğer çözüm" bilgi eksikliğinden dolayı mevcut değildir.

Öyleyse bırakın bilgi sahibi insanlar konuyu konuşsun, eğer yardım etmeniz gerekmiyorsa, sizi harekete geçiren nedir?

Roffield :

Hiçbir şey gösterilmedi. Ücretli çözüm işini iyi yapıyor, ancak kötüye kullanılıyor.

Ya ödersiniz ya da okursunuz - modern dünyanın kanunu.

Tam bir kargaşa ve kaos.

TK'me göre yazılmış bir sınıfı kendi amaçlarım için nasıl kullanmam gerektiğini söyler misiniz?

 
Aleksey Vyazmikin :

Nasıl bu kadar özgüvenli olabiliyorsun...

Öyleyse bırakın bilgi sahibi insanlar konuyu konuşsun, eğer yardım etmeniz gerekmiyorsa, sizi harekete geçiren nedir?

TK'me göre yazılmış bir sınıfı kendi amaçlarım için nasıl kullanmam gerektiğini söyler misiniz?

Kendine güven, bu tür görevleri programlamada bana çok fazla deneyim kazandırıyor.

Herkes zaten esas hakkında konuştu. Hatta fxsaber bile çözüme bir bağlantı verdi. Ancak tüm gerçek çözümler reddedildi veya göz ardı edildi.

Sınıf iyidir, ancak TOR kimsenin anlamadığı amaçlar için açıkça yanlış yazılmıştır.

Bir CSV dosyasını 10 satır kodla okumak çok zorsa, belki de bunu kendiniz yapmamalısınız?

 
Roffild :

Kendine güven, bu tür görevleri programlamada bana çok fazla deneyim kazandırıyor.

Herkes zaten esas hakkında konuştu. Hatta fxsaber çözüme bir bağlantı verdi. Ancak tüm gerçek çözümler reddedildi veya göz ardı edildi.

Sınıf iyidir, ancak TOR kimsenin anlamadığı amaçlar için açıkça yanlış yazılmıştır.

Bir CSV dosyasını 10 satır kodla okumak çok zorsa, belki de bunu kendiniz yapmamalısınız?

Konuya katkınız açık.

 

Çözümümü sunabilirim. Test kodu ve sonucu aşağıdadır. Dosya 140MB boyutunda ve 2.000.000 giriş içeriyor. Görev yöneticisine göre, 270MB RAM kullanımına baktım (komut dosyası olmadan maksimum eksi hacim)

   ulong lc1= GetTickCount ();
   CSV *csv= new CSV();
   csv.Read_from_file( "fff0.csv" , true ); //Чтение с файла с автоматической конвертацией в нужный формат
   csv.Write_to_file( "fff1.csv" , true ); //Запись в файл
   Print (csv.Get_info());               //Вывод информации о таблице(столбцы, строки, типы данных для каждого столбца)
   Print ( GetTickCount ()-lc1);           //Вывод времени работы
   delete csv;


Testte kullanılan örnek bir CSV dosyası:

boooool;dooooouble;enuuuuuum;looooooong;striiiiiiign;tiiiiiime
FALSE ; 0.00000000 ; ORDER_TYPE_BUY ; 0 ; 0 ; 1970.01 . 01 00 : 00
TRUE ; 1.00000000 ; ORDER_TYPE_SELL ; 1 ; 1 ; 1970.01 . 01 00 : 00
FALSE ; 2.00000000 ; ORDER_TYPE_BUY_LIMIT ; 2 ; 2 ; 1970.01 . 01 00 : 00
FALSE ; 3.00000000 ; ORDER_TYPE_SELL_LIMIT ; 3 ; 3 ; 1970.01 . 01 00 : 00

Numaralandırmalara bakılmaksızın bir dosyayı kaydetme

boooool;dooooouble;enuuuuuum;looooooong;striiiiiiign;tiiiiiime
0 ; 0.00000000 ; 8 ; 0 ; 0 ; 1970.01 . 01 00 : 00
1 ; 1.00000000 ; 0 ; 1 ; 1 ; 1970.01 . 01 00 : 00
0 ; 2.00000000 ; 1 ; 2 ; 2 ; 1970.01 . 01 00 : 00
0 ; 3.00000000 ; 2 ; 3 ; 3 ; 1970.01 . 01 00 : 00
 
Aliaksandr Hryshyn :

Çözümümü sunabilirim. Test kodu ve sonucu aşağıdadır. Dosya 140MB boyutunda ve 2.000.000 giriş içeriyor. Görev yöneticisine göre, 270MB RAM kullanımına baktım (komut dosyası olmadan maksimum eksi hacim)


Testte kullanılan örnek bir CSV dosyası:

Numaralandırmalara bakılmaksızın bir dosyayı kaydetme

İyi! Çözümünüzü denemeyi kabul ediyorum.