Tuval ve Etiketler - sayfa 14

 
Renat Fatkhullin :

Derleme sırasında kaydedilen bir kaynaktan okursanız, bu bir kez yapılmalıdır.

Dinamikten okuma.

 
Mihail Matkovskij :

Aynı zamanda, Canvas'ın hangi giriş parametrelerinde yavaş olduğunu söylemeniz gerekir. limit_fps: false ise, o zaman "ve falcıya gitmeyin" açıktır... :)

Ve dün limit_fps mi arıyordum?

 
Dmitry Fedoseev :

Ve dün limit_fps mi arıyordum?

Ve ne aranmalı? Expert Advisor'ı çalıştırın ve farklı modlarda ölçüm yapmaya çalışın. En azından limit_fps etkinken, en azından onsuz. Ve sonra her şeyi anlayacaksın.

Bütün mesele CCanvas ::TextOut ve CCanvas::Update çağrılarının sıklığını sınırlamaktır.
 
Mihail Matkovskij :

Ve ne aranmalı? Expert Advisor'ı çalıştırın ve farklı modlarda ölçüm yapmaya çalışın. Limit_fps etkin olsa bile, onsuz bile. Ve sonra her şeyi anlayacaksın.

Bütün mesele CCanvas ::TextOut ve CCanvas::Update çağrılarının sıklığını sınırlamaktır.

Herkesin bu kadar basit bir aptal olduğunu mu düşünüyorsun ve hepsi bu mu? Sadece çılgınca araba kullanıyorlar ve çılgına dönüyorlar - bu normal mi? Eğer öyleyse neden onu arayayım ki? Dosyalarınızı birkaç sayfa önce verdiği bağlantılardan indirin ve limit_fps ayarı için alan yöntemi olmadığını görün. Bir çağrı var, ancak alan yöntemi yok, bu yüzden derlenmiyor. Ancak bir satır yorum yaparsanız, derlenir. Ama zaten kod tabanında sayfayı buldum ve arşivi indirdim, orada her şey yerli yerinde. Özellikle açıklayacağım, yoksa şimdi düşünmeye başlayacaksınız - eğer bir yöntem yoksa limit_fps etkinken nasıl test edebilirim. Ama kim bilir, belki o linkler zaten vardır, belki dosyalar gecikmeli güncellenir,

Label ile karşılaştırırken TextOut Update çağrılarının sıklığını sınırlamanın bir anlamı yoktur , çünkü karşılaştırma aynı koşullar altında yapılmalıdır.

 
Dmitry Fedoseev :

Herkesin bu kadar basit bir aptal olduğunu mu düşünüyorsun ve hepsi bu mu? Sadece çılgınca araba kullanıyorlar ve çılgına dönüyorlar - bu normal mi? Eğer öyleyse neden onu arayayım ki? Dosyalarınızı birkaç sayfa önce verdiği bağlantılardan indirin ve limit_fps ayarı için alan yöntemi olmadığını görün. Bir çağrı var, ancak alan yöntemi yok, bu nedenle derlenmiyor. Ancak bir satır yorum yaparsanız, derlenir. Ama zaten kod tabanında sayfayı buldum ve arşivi indirdim, orada her şey yerli yerinde. Özellikle açıklayacağım, yoksa şimdi düşünmeye başlayacaksınız - eğer bir yöntem yoksa limit_fps etkinken nasıl test edebilirim. Ama kim bilir, belki o linkler zaten vardır, belki dosyalar gecikmeli güncellenir,

Label ile karşılaştırırken TextOut Update çağrılarının sıklığını sınırlamanın bir anlamı yoktur , çünkü karşılaştırma aynı koşullar altında yapılmalıdır.

Az önce FPS sınırının devre dışı bırakma yeteneği olmadan çalıştığı bir demo sürümünü indirdiniz. Ancak ölçüm yapmak için bir uzmana ihtiyacınız var! Burada tüm bağlantıları bulacaksınız https://www.mql5.com/en/forum/364640/page13#comment_21314045 . ChartDisplay.mqh kitaplığını ve CanvasVsLabels.mq5 uzmanını indirin.

Size yardımcı olacak ekran görüntüsü

Ve başka bir şey yazmadan önce her şeyi dikkatlice okuyun   memnuniyetsizlik mesajınız! :)

 
Grafik nesnelerin çeşitli özelliklerinde yüksek oranda değişiklik olduğunda ve grafiğin kendisini kaydetmeye çalışırken, Windows mavi bir ekranla sonuçlandı.
 
Mihail Matkovskij :

Az önce FPS sınırının devre dışı bırakma yeteneği olmadan çalıştığı bir demo sürümünü indirdiniz. Ancak ölçüm yapmak için bir uzmana ihtiyacınız var! Burada tüm bağlantıları bulacaksınız https://www.mql5.com/ru/forum/364640/page13#comment_21314045 . ChartDisplay.mqh kitaplığını ve CanvasVsLabels.mq5 uzmanını indirin.

Size yardımcı olacak ekran görüntüsü

Ve başka bir şey yazmadan önce her şeyi dikkatlice okuyun   memnuniyetsizlik mesajınız! :)

Dosyaları indirmek için bağlantılar verdiğiniz gönderinizden bir alıntı içeren bir bağlantı . Orada ne okumalıyım ve hangi seçeneğim vardı? Ve şimdi o gönderiyi zaten düzenlediniz. Gerçekten etrafındaki herkesin bu kadar aptal olduğunu ve beyinlerini umursamasının bu kadar kolay olduğunu mu düşünüyorsun?

Yoksa burada yapacak bir şeyim olmadığını ve oturup çılgın hikayeler uydurduğumu mu sanıyorsun?

 
Nikolai Semko :
Gerçekten?
Benim için sürpriz.
Aynı boyutta normal bir uint dizisini kopyalamaktan ne kadar daha yavaş?
 #include <fxsaber\Benchmark\Benchmark.mqh> // https://www.mql5.com/ru/code/31279

void OnStart ()
{
   uint Data[];
  
   ArrayResize (Data, 1 e6);

   const string Name = "::" + __FILE__ ;
  
   for ( int i = 0 ; i < 10 ; i++)
    _B( ResourceCreate (Name, Data, ArraySize (Data), 1 , 0 , 0 , ArraySize (Data), COLOR_FORMAT_ARGB_NORMALIZE ), 100 );
    
   uint Width;
   uint Height;
  
   for ( int i = 0 ; i < 10 ; i++)
    _B( ResourceReadImage (Name, Data, Width, Height), 1 );
  
   ResourceFree (Name);
}


 Alert : Bench_Stack = 0 , 100 <= Time[Test9.mq5 557 in OnStart : ResourceCreate (Name,Data, ArraySize (Data), 1 , 0 , 0 , ArraySize (Data), COLOR_FORMAT_ARGB_NORMALIZE )] = 1973 mcs.
Alert : Bench_Stack = 0 , 100 <= Time[Test9.mq5 557 in OnStart : ResourceCreate (Name,Data, ArraySize (Data), 1 , 0 , 0 , ArraySize (Data), COLOR_FORMAT_ARGB_NORMALIZE )] = 891 mcs.
Alert : Bench_Stack = 0 , 100 <= Time[Test9.mq5 557 in OnStart : ResourceCreate (Name,Data, ArraySize (Data), 1 , 0 , 0 , ArraySize (Data), COLOR_FORMAT_ARGB_NORMALIZE )] = 1226 mcs.
Alert : Bench_Stack = 0 , 100 <= Time[Test9.mq5 557 in OnStart : ResourceCreate (Name,Data, ArraySize (Data), 1 , 0 , 0 , ArraySize (Data), COLOR_FORMAT_ARGB_NORMALIZE )] = 1232 mcs.
Alert : Bench_Stack = 0 , 100 <= Time[Test9.mq5 557 in OnStart : ResourceCreate (Name,Data, ArraySize (Data), 1 , 0 , 0 , ArraySize (Data), COLOR_FORMAT_ARGB_NORMALIZE )] = 940 mcs.
Alert : Bench_Stack = 0 , 100 <= Time[Test9.mq5 557 in OnStart : ResourceCreate (Name,Data, ArraySize (Data), 1 , 0 , 0 , ArraySize (Data), COLOR_FORMAT_ARGB_NORMALIZE )] = 940 mcs.
Alert : Bench_Stack = 0 , 100 <= Time[Test9.mq5 557 in OnStart : ResourceCreate (Name,Data, ArraySize (Data), 1 , 0 , 0 , ArraySize (Data), COLOR_FORMAT_ARGB_NORMALIZE )] = 924 mcs.
Alert : Bench_Stack = 0 , 100 <= Time[Test9.mq5 557 in OnStart : ResourceCreate (Name,Data, ArraySize (Data), 1 , 0 , 0 , ArraySize (Data), COLOR_FORMAT_ARGB_NORMALIZE )] = 917 mcs.
Alert : Bench_Stack = 0 , 100 <= Time[Test9.mq5 557 in OnStart : ResourceCreate (Name,Data, ArraySize (Data), 1 , 0 , 0 , ArraySize (Data), COLOR_FORMAT_ARGB_NORMALIZE )] = 925 mcs.
Alert : Bench_Stack = 0 , 100 <= Time[Test9.mq5 557 in OnStart : ResourceCreate (Name,Data, ArraySize (Data), 1 , 0 , 0 , ArraySize (Data), COLOR_FORMAT_ARGB_NORMALIZE )] = 932 mcs.

Alert : Bench_Stack = 0 , 1 <= Time[Test9.mq5 563 in OnStart : ResourceReadImage (Name,Data,Width,Height)] = 2575 mcs.
Alert : Bench_Stack = 0 , 1 <= Time[Test9.mq5 563 in OnStart : ResourceReadImage (Name,Data,Width,Height)] = 2442 mcs.
Alert : Bench_Stack = 0 , 1 <= Time[Test9.mq5 563 in OnStart : ResourceReadImage (Name,Data,Width,Height)] = 7473 mcs.
Alert : Bench_Stack = 0 , 1 <= Time[Test9.mq5 563 in OnStart : ResourceReadImage (Name,Data,Width,Height)] = 2308 mcs.
Alert : Bench_Stack = 0 , 1 <= Time[Test9.mq5 563 in OnStart : ResourceReadImage (Name,Data,Width,Height)] = 2955 mcs.
Alert : Bench_Stack = 0 , 1 <= Time[Test9.mq5 563 in OnStart : ResourceReadImage (Name,Data,Width,Height)] = 2883 mcs.
Alert : Bench_Stack = 0 , 1 <= Time[Test9.mq5 563 in OnStart : ResourceReadImage (Name,Data,Width,Height)] = 2715 mcs.
Alert : Bench_Stack = 0 , 1 <= Time[Test9.mq5 563 in OnStart : ResourceReadImage (Name,Data,Width,Height)] = 2842 mcs.
Alert : Bench_Stack = 0 , 1 <= Time[Test9.mq5 563 in OnStart : ResourceReadImage (Name,Data,Width,Height)] = 2755 mcs.
Alert : Bench_Stack = 0 , 1 <= Time[Test9.mq5 563 in OnStart : ResourceReadImage (Name,Data,Width,Height)] = 2304 mcs.

Yüzde fren yapın. Ve rekor 1000 FPS'nin tavan olduğunu gösteriyor.

 
fxsaber :


Yüzde fren yapın. Ve rekor 1000 FPS'nin tavan olduğunu gösteriyor.

Bakalım, garip

 
Dmitry Fedoseev :

Dosyaları indirmek için bağlantılar verdiğiniz gönderinizden bir alıntı içeren bir bağlantı . Orada ne okumalıyım ve hangi seçeneğim vardı? Ve şimdi o gönderiyi zaten düzenlediniz. Gerçekten etrafındaki herkesin bu kadar aptal olduğunu ve beyinlerini umursamasının bu kadar kolay olduğunu mu düşünüyorsun?

Yoksa burada yapacak bir şeyim olmadığını ve oturup çılgın hikayeler uydurduğumu mu sanıyorsun?

İşte bu, o linkte nereden indirileceğini yazdım.

Michael Matkovskij :

\MQL5\Experts\canvas-vs-labels\measurement\cyberdev\ ve \MQL5\Experts\canvas-vs-labels\measurement\ klasörlerindeki dosyaları KB cinsinden indirin. Fps'yi sınırlamak için girişlerde limit_fps değerini true olarak ayarlayın. Dosya: CanvasVsLabels.mq5. Testin nasıl çalıştırılacağı yukarıda gösterilmiştir. Ve KB'de bir açıklama var.

Bu sana yetmedi mi?! O zaman kaynak kodlarını, nasıl çalıştırılacağını bile anlamadınız. Her ne kadar onların yardımıyla ölçümler yapmış olsam da, sonuçları yukarıda yayınladım. Şimdi, gerekli kaynakları indirdiniz mi? Başlatıldı mı? Değilse, devam edin ve en azından programlamanın temellerini öğrenin. Çünkü imkansız!... Hazır kaynaklardan uygulama geliştirmeyi bile bilmiyorsanız, bundan sonra ne diyebiliriz ki...

Derlenmiş EA dosyasını ekliyorum. Bundan sonra hala kullanmakta sorun yaşıyorsanız, o zaman gerçekten, öğrenin. Temel bilgilerle başlayın: değişken nedir, fonksiyon nedir ve program nedir! Ve daha da yükselişte!...


<*.ex* dosyası kaldırıldı>