GlobalVariableTime

Global değişkene yapılmış son erişimin zamanının değerine dönüş yapar.

datetime  GlobalVariableTime(
   string  name      // isim
   );

Parametreler

name

[in]  Global değişkenin ismi.

Dönüş değeri

Fonksiyon, belirtilen global değişkene yapılmış son erişimin zamanına dönüş yapar. Değer alma amacıyla bir değişkenin çağrılması aynı zamanda bir erişim sayılır. Hata ile ilgili bilgi almak için, GetLastError() fonksiyonunu çağırın.

Not

Global değişkenler, son erişimlerinin ardından 4 hafta boyunca müşteri terminali tarafından saklanır. Daha sonra otomatik olarak silinirler.

 

Örnek:

#property copyright "Copyright 2025, MetaQuotes Ltd."
#property link      "https://www.mql5.com"
#property version   "1.00"
 
#define   GV_NAME    "TestGlobalVariableTime"
#define   GV_TOTAL   5
 
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- müşteri terminalinin test için oluşturulan GV_NAME önekine sahip global değişkenlerini sil
   GlobalVariablesDeleteAll(GV_NAME);
   
//--- GV_NAME önekiyle GV_TOTAL miktarında müşteri terminali global değişkenleri oluştur ve
//--- her birinin oluşturulması arasında 5 saniyelik duraklama yap
   for(int i=0i<GV_TOTALi++)
     {
      string name=GV_NAME+"_"+(string)i;
      ulong value=GetMicrosecondCount();
      ResetLastError();
      datetime time=GlobalVariableSet(name, (double)value);
      if(time==0)
        {
         Print("GlobalVariableSet() failed. Error "GetLastError());
         continue;
        }
      Sleep(5000);
      PrintFormat("GlobalVariableSet(%s, %.0f). Create time: %s"namevalueTimeToString(time,TIME_DATE|TIME_MINUTES|TIME_SECONDS));
     }
     
//--- birkaç saniye bekle ve GV_NAME önekine sahip terminal global değişkenlerinin oluşturulma zamanını günlüğe yazdır
   Sleep(2000);
   Print(""); 
   GlobalVariableTimePrint("Creation time");
   
//--- birkaç saniye daha bekle ve GV_NAME önekine sahip terminal global değişkenlerine son erişim zamanını günlüğe yazdır
//--- her bir değişkene son erişim zamanının, oluşturulma zamanına eşit olduğunu görebiliriz
   Sleep(2000);
   Print(""); 
   GlobalVariableTimePrint("Last access time");
 
//--- şimdi oluşturulan değişkenlerin her birinin değerini iste
   Print(""); 
   int total=GlobalVariablesTotal();
   for(int i=0i<totali++)
     {
      string name=GlobalVariableName(i);
      if(GetLastError()!=0)
        {
         PrintFormat("Error %d occurred while getting global variable name at index %d"GetLastError(), i);
         ResetLastError();
         continue;
        }
      if(StringFind(nameGV_NAME)==WRONG_VALUE)
         continue;
         
      double value=GlobalVariableGet(name);
      if(GetLastError()!=0)
        {
         PrintFormat("Error %d occurred while getting global variable value at index %d"GetLastError(), i);
         ResetLastError();
         continue;
        }
      PrintFormat("Value of global variable named \"%s\": %.0f"namevalue);
     }
   
//--- birkaç saniye daha bekle ve GV_NAME önekine sahip terminal global değişkenlerine son erişim zamanını günlüğe yazdır
//--- her bir değişkene son erişim zamanının, değerini isteme zamanına eşit olduğunu görebiliriz
   Sleep(2000);
   Print(""); 
   GlobalVariableTimePrint("After getting value, the last access time");
 
//--- müşteri terminalinin test için oluşturulan GV_NAME önekine sahip tüm global değişkenlerini sil
   GlobalVariablesDeleteAll(GV_NAME);
   /*
   sonuç:
   GlobalVariableSet(TestGlobalVariableTime_03987). Create time2024.11.28 22:00:39
   GlobalVariableSet(TestGlobalVariableTime_15012302). Create time2024.11.28 22:00:44
   GlobalVariableSet(TestGlobalVariableTime_210034365). Create time2024.11.28 22:00:49
   GlobalVariableSet(TestGlobalVariableTime_315045008). Create time2024.11.28 22:00:54
   GlobalVariableSet(TestGlobalVariableTime_420060340). Create time2024.11.28 22:00:59
   
   Creation time of global variable named "TestGlobalVariableTime_0"2024.11.28 22:00:39
   Creation time of global variable named "TestGlobalVariableTime_1"2024.11.28 22:00:44
   Creation time of global variable named "TestGlobalVariableTime_2"2024.11.28 22:00:49
   Creation time of global variable named "TestGlobalVariableTime_3"2024.11.28 22:00:54
   Creation time of global variable named "TestGlobalVariableTime_4"2024.11.28 22:00:59
   
   Last access time of global variable named "TestGlobalVariableTime_0"2024.11.28 22:00:39
   Last access time of global variable named "TestGlobalVariableTime_1"2024.11.28 22:00:44
   Last access time of global variable named "TestGlobalVariableTime_2"2024.11.28 22:00:49
   Last access time of global variable named "TestGlobalVariableTime_3"2024.11.28 22:00:54
   Last access time of global variable named "TestGlobalVariableTime_4"2024.11.28 22:00:59
   
   Value of global variable named "TestGlobalVariableTime_0"3987
   Value of global variable named "TestGlobalVariableTime_1"5012302
   Value of global variable named "TestGlobalVariableTime_2"10034365
   Value of global variable named "TestGlobalVariableTime_3"15045008
   Value of global variable named "TestGlobalVariableTime_4"20060340
   
   After getting valuethe last access time of global variable named "TestGlobalVariableTime_0"2024.11.28 22:01:08
   After getting valuethe last access time of global variable named "TestGlobalVariableTime_1"2024.11.28 22:01:08
   After getting valuethe last access time of global variable named "TestGlobalVariableTime_2"2024.11.28 22:01:08
   After getting valuethe last access time of global variable named "TestGlobalVariableTime_3"2024.11.28 22:01:08
   After getting valuethe last access time of global variable named "TestGlobalVariableTime_4"2024.11.28 22:01:08
   */
  }
//+------------------------------------------------------------------+
//| Müşteri terminalinin global değişkenlerine                       |
//| son erişim zamanlarını günlüğe yazdır                            |
//+------------------------------------------------------------------+
void GlobalVariableTimePrint(const string reason)
  {
   int total=GlobalVariablesTotal();
   for(int i=0;i<total;i++)
     {
      string name=GlobalVariableName(i);
      if(GetLastError()!=0)
        {
         PrintFormat("Error %d occurred while getting global variable name at index %d"GetLastError(), i);
         ResetLastError();
         continue;
        }
      datetime time=GlobalVariableTime(name);
      if(GetLastError()!=0)
        {
         PrintFormat("Error %d occurred while getting global variable time at index %d"GetLastError(), i);
         ResetLastError();
         continue;
        }
      PrintFormat("%s of global variable named \"%s\": %s"reasonnameTimeToString(time,TIME_DATE|TIME_MINUTES|TIME_SECONDS));
     }
  }

Ayrıca Bakınız

GlobalVariableCheck()