Hey, en ce moment, j'ai essayé de trouver de bons moyens pour adoucir les threads dormant (au cas où il serait dérangé ou si votre ordinateur laggs etc).System.currentTimeMillis() de JAVA ou Environment.TickCount de C#?
Alors, quelle est la méthode globale "meilleure performance"?
méthode de JAVA System.currentTimeMillis() C#:
public static double GetCurrentMilliseconds()
{
DateTime staticDate = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
TimeSpan timeSpan = DateTime.UtcNow - staticDate;
return timeSpan.TotalMilliseconds;
}
System.currentTimeMillis() en cours d'utilisation:
public void Run()
{
this.lastUpdate = TimeUtilities.GetCurrentMilliseconds();
while (isRunning)
{
if (TimeUtilities.GetCurrentMilliseconds() - lastUpdate >= 600)
{
lastUpdate = TimeUtilities.GetCurrentMilliseconds();
// bla bla bla...
}
try
{
Thread.Sleep(100);
}
catch (Exception ex)
{
Jolt.GetLog().WriteException(ex);
}
}
}
et Environment.TickCount C# 's:
private void Run()
{
double lastUpdate = Environment.TickCount;
while (isRunning)
{
if (lastUpdate + 600 < Environment.TickCount)
{
lastUpdate = Environment.TickCount;
// bla bla bla...
}
try
{
Thread.Sleep(100);
}
catch (Exception ex)
{
Jolt.GetLog().WriteException(ex);
}
}
}
Tous l'aide serait appréciée. Sinon, si c'est une mauvaise idée, pourriez-vous s'il vous plaît fournir un meilleur moyen de le faire.
Merci mon ami, c'est probablement la réponse dont j'avais besoin. – TheAJ
Commentaire minuscule: si vous considérez que TickCount est un entier non signé, il ne sera pas retourné avant 48 jours. – RenniePet