Hatalar, hatalar, sorular - sayfa 2202

 
Комбинатор :
Neden bu kadar zor? sonuç dosyasını takip edin + yerel Uyku sorunu çözün.

Bu arada, evet. Kolay ))

 
Dosyanın sunamadığından daha büyük bir ek yükü olan senkronizasyon nesnesi? Rave.
 
Alexey Navoykov :

Evet, böyle bir sorun var. Aşırı yüklenmiş bir operatöre atıfta bulunarak bir işaretçi iletmek bir hata verir. Bu, her şey yolunda gitmeden önce en son yapılarda ortaya çıktı. Birkaç aydır servis masasına bir istek gönderdim, ancak her zamanki gibi sıkıcı. Cevap yok, merhaba.

Bu, özellikle bir dizi işaretçi için çok önemlidir, çünkü bunları referans dışında hiçbir şekilde iletemezsiniz:

Bu yüzden hala 1554'ü inşa ediyorum.

Ayrıca en son sürümlerde işaretçilerle karşılaştım, önceleri sorunsuz bir şekilde geçersiz kılmak mümkün oldu, şimdi bağlantıyı takip etmiyor, birkaç kitaplığımda kodu düzeltmek zorunda kaldım

 
Sergey Dzyublik :
Dosyanın sunamadığından daha büyük bir ek yükü olan senkronizasyon nesnesi? Rave.

Test sırasında bir dosyaya yazmam gerekiyor mu?, neden hafızayı sevmiyorsun?

 
Alexey Navoykov :

Kernel'den Sleep() hakkındaki ipucu için teşekkürler!

 
Комбинатор :
Neden bu kadar zor? sonuç dosyasını takip edin + yerel Uyku sorunu çözün.

MQL Sleep(), gerçek zamanlı atlama bir milisaniyeden az olduğunda ve harici program gerçek zamanlı olarak yürütüldüğünde, test sırasında sanal zamanı atlar (yani, zamanı 0,6 saniye ile işaretleyin).

Ama Çekirdekten Uyku ile 've deneyeceğim).

 
Konstantin :

Test sırasında bir dosyaya yazmam gerekiyor mu?, neden hafızayı sevmiyorsun?

Evet, test sırasında bir dosyaya yazmak yerine bellek kullanmak biraz zaman kazandıracak (tam olarak tahmin etmedim, ancak bir döngü için maksimum 30 milisaniyeye kadar olduğunu varsayıyorum), ancak harici bir programın yürütülmesi zaman alır. çoğu zaman.

Bu nedenle, şu an için, bir üçüncü taraf programın yürütüldüğü süre boyunca testin askıya alınması kritik önem taşımaktadır.

 
romachandr :

Evet, test sırasında bir dosyaya yazmak yerine bellek kullanmak biraz zaman kazandıracak (tam olarak tahmin etmedim, ancak bir döngü için maksimum 30 milisaniyeye kadar olduğunu varsayıyorum), ancak harici bir programın yürütülmesi zaman alır. çoğu zaman.

Bu nedenle, şimdilik, bir üçüncü taraf programının yürütüldüğü süre boyunca testi askıya almak çok önemlidir.

genel olarak, bir dosyaya ve belleğe yazma hızı önemli ölçüde farklılık gösterir.

 
Romachandr, görünüşe göre görevi yanlış anladım. Test cihazını kullanmıyorum ve EA'yı durdurmanın kene oluşumunu durduracağından emin değilim. Burada beceriksizim.
 

Peki, şimdi (derleme 1809) tam tersi

https://www.mql5.com/ru/forum/1111/page2181#comment_6765277

3. satır (OnStart'ta) derlenir, ancak 4. satır derlenmez

Başka bir deyişle

 typedef int (*fn)( uint ); 
#import "Test1.ex5"
        void f( fn );
#import "Test2.ex5"
         int g(  int  ); //(1)
         int g( uint ); //(2)
#import
void OnStart ()
{
        f( g ); // Error : 'g' - cannot resolve function address
}

Ve (1) ve (2) satırlarını değiştirirseniz, sorun değil. Fark ne?

Ошибки, баги, вопросы
Ошибки, баги, вопросы
  • 2018.03.09
  • www.mql5.com
Общее обсуждение: Ошибки, баги, вопросы