Hatalar, hatalar, sorular - sayfa 2763

 

Senaryo çalışmasının sonucu neden raporda 1-2 saniyeye eşit, ama aslında bir dakikadan fazla?

 #include <(MyLib)\CGraphicObjects\CMyButton.mqh>CMyButton but;

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OnStart ()
  {
   Print ( "Начали" );
// ===================================================================
   int total = 10000 ;
   for ( int i = 0 ; i < total; i++)
      but.Create( "Push" + ( string )i, 32 , 32 , 30 , 30 );
// ===================================================================
   ulong mass[ 100 ];
   ArrayInitialize (mass, 0 );
// ===================================================================
   for ( int k = 0 ; k < 100 ; k++)
     {

       ulong   start = GetMicrosecondCount ();

       for ( int i = 0 ; i < total; i++)
         color col = but.ColorBG();

      mass[k] = GetMicrosecondCount () - start;
     }
// ===================================================================
   Print ( "Массив" );
   ulong rez = 0 ;
   for ( int i = 0 ; i < 100 ; i++)
      rez += mass[i];

   Print ( "Старый способ Итог: " + IntegerToString (rez / 100 )+ " Sec " + IntegerToString (rez / 100 / 1000000 ));

  }
//+------------------------------------------------------------------+

Ardından komut dosyası çalıştı ve başlangıç anından boşaltma anına kadar yaklaşık bir dakika veya biraz daha fazla sürer.

Ama script inatla 1-2 saniye çalıştığını yazıyor, PC'yi böyle ne yavaşlatabilir ki?

2020.06.01 11:34:26.680 Test hızı (EURUSD,M15) başladı

2020.06.01 11:37:34.067 Test hızı (EURUSD,M15) sıralamak

2020.06.01 11:37:34.067 Test hızı (EURUSD,M15) Eski yol Toplam: 1870971ms Sn 1

2020.06.01 11:39:32.283 Test hızı (EURUSD,M15) başladı

2020.06.01 11:42:24.664 Test hızı (EURUSD,M15) sıralamak

2020.06.01 11:42:24.664 Test hızı (EURUSD,M15) Eski yol Toplam: 1652839ms Sn 1


 
Vladimir Pastushak :

Senaryo çalışmasının sonucu neden raporda 1-2 saniyeye eşit, ama aslında bir dakikadan fazla?

Ardından komut dosyası çalıştı ve başlangıç anından boşaltma anına kadar yaklaşık bir dakika veya biraz daha fazla sürer.

Ama script inatla 1-2 saniye çalıştığını yazıyor, PC'yi böyle ne yavaşlatabilir ki?

2020.06.01 11:34:26.680 Test hızı (EURUSD,M15) başladı

2020.06.01 11:37:34.067 Test hızı (EURUSD,M15) sıralamak

2020.06.01 11:37:34.067 Test hızı (EURUSD,M15) Eski yol Toplam: 1870971ms Sn 1

2020.06.01 11:39:32.283 Test hızı (EURUSD,M15) başladı

2020.06.01 11:42:24.664 Test hızı (EURUSD,M15) sıralamak

2020.06.01 11:42:24.664 Test hızı (EURUSD,M15) Eski yol Toplam: 1652839ms Sn 1


Çünkü, betiğin süresi değil, döngünün bir yinelemesinin zamanı yazdırılır.

 
Geliştiriciler, lütfen grafikteki işlemlerle bir şeyler yapın. Birçoğu olduğunda, grafik basitçe görünmez, her seferinde yeni bir anlaşma ile onu silmeniz gerekir.
 
Alexey Viktorov :

Çünkü, betiğin süresi değil, döngünün bir yinelemesinin zamanı yazdırılır.

Komut dosyası bir döngüde 10.000 nesneyi 100 kez işler, toplam 1.000.000

kütle boyunca[k] Her döngü geçişinin zamanını hatırlıyorum

sonra ortalama geçişi hesaplayın

uzun öz = 0;

for(int i = 0; i < 100; i++)

rez += kütle[i];

öz/100

Muhtemelen senaryoya dikkatlice bakmadın.

 
2470 derleme arşivine bir bağlantısı olan var mı? MT'm güncellemek istemiyor - yeni bir yapı olduğunu söylüyor, "dolaşımda" boş bir canlı güncelleme / temp klasörü oluşturuyor, ancak daha sonra günlükte "'MT5CLW64' indirilemedi" hatası var. Genellikle Andrey Khatimlianskii'den google sürücü kurtarmaya gelir ;-), ancak şimdiye kadar sadece 2460 var.
 

Ne oluyor be?

2020.06.01 12:20:03.695 'BR-7.20' kapsayıcı okuma hatasını işaretler [İşlem başarıyla tamamlandı. (0)]

Ve genel olarak, en son sürümde CopyTicks ile ilgili bir tür hata var.

 
Dmitriy Skub :

Ve genel olarak, en son sürümde CopyTicks ile ilgili bir tür hata var.

Hesaplamalardan önce, CopyTicksRange aracılığıyla son hesaplamadan bu yana atlanan tüm onay işaretlerini her zaman yüklerim. Herhangi bir sorun fark etmedi.

 
fxsaber :

Hesaplamalardan önce, CopyTicksRange aracılığıyla son hesaplamadan bu yana atlanan tüm onay işaretlerini her zaman yüklerim. Herhangi bir sorun fark etmedi.

Orada CopyTicks çağrısının (bunun hakkında konuşurken) veya herhangi bir bayrak biçiminde hiçbir şeyi değiştirmediler mi?

Uzman, son 5 yıldır sessizce gerçek zamanlı olarak bir dosyaya keneler kopyalayan asılmaya başladı.

 
Dmitriy Skub :

Orada CopyTicks çağrısının (bunun hakkında konuşurken) veya herhangi bir bayrak biçiminde hiçbir şeyi değiştirmediler mi?

Uzun zaman önce CopyTicksRange'e geçtim. Onunla uçuş normaldir.

 

2470 derlemesinde, gösterge tutamacını göstergenin kendisinden öğrenirsek, göstergeyi daha sonra silmek imkansızdır.

Gösterge, çalışan göstergeler listesinden kaldırılır ancak arka planda çalışır.

OnDeinit çağrılmaz.