2016-04-11 21 views
1

Benim android uygulamasında belirli bir yerde bir zamanlayıcı kullanılıyor. Zaman bir saati (3600000) aştığında bir istisna alıyorum, dönemin çok büyük olduğunu söylüyor.Xamarin Android C# Zamanlayıcı hatası

myTime = "3600000"; 

TempTimer = new System.Threading.Timer ((o) => { 
    ContentCheck(); // function call/ Void call <---------- 
}, null, 0, Int64.Parse(myTime) ); 

Öyle int64 çalıştı, zaten int.parse() denedim (Bu yüzden kodda olmak ..)

bir saat VE yapamayacağın bir zamanlayıcı var mı? Ya da bir zamanlayıcı olarak aynı sonuçları almak için belki de alternatif bir yöntem?

+0

Neden aralığını bir dize olarak saklıyorsunuz? –

+0

JSON sunucu işlemlerini içeren uzun hikaye .. bu yüzden sadece aktarılmadı. Ama bu önemli değil .. – Migz

cevap

1
Timer timer = new Timer(); 
     timer.Interval = 3600000; 
     timer.AutoReset = false; 
     timer.Start(); 
     timer.Elapsed+= Timer_Elapsed; 


    void Timer_Elapsed (object sender, ElapsedEventArgs e) 
    { 
     Console.WriteLine("Timer has gone off"); 
    } 

Burada, zamanlayıcı örneğinin interval özelliği Double (Çift) biçimindedir. Böylece gerçekten büyük değerler saklayabilir. Yani bu senin için çalışmalı.

+0

Çift olarak Timer Aralığı? .. Mükemmel!! Teşekkür ederim ! – Migz

İlgili konular