У меня следующий код, чтобы показать текущее время:Получить текущее время изменения времени
static void Main(string[] args)
{
while (true)
{
ShowDate(GetTime(),GetDate());
//Here's my issue:
System.Threading.Thread.Sleep(1000);
}
}
//Clear Console and write current Date again.
static void ShowDate(String time, String date)
{
Console.Clear();
Console.WriteLine(date);
Console.WriteLine(time);
}
static string GetTime()
{
string timeNow = DateTime.Now.ToString("HH:mm:ss");
return timeNow;
}
static string GetDate()
{
string dateNow = DateTime.Now.ToString("dd.MM.yy");
return dateNow;
}
Ну, в моем понимании, Thread.Sleep(1000)
только показывает время, каждый второй измеренный после запуска программы. Таким образом, это не показывает совершенно правильное время. Я мог бы попробовать более низкое значение для Thread.Sleep()
, но это все еще неточно и, вероятно, становится неэффективным. Есть ли какой-либо возможный способ, например, обновлять время каждый раз, когда система сама обновляет свое время? Может быть, что-то вроде event listener
?
как вы имеете в виду его "своего рода неточными? –
Что вам нужно сделать ?. – NicoRiff
Непонятно, чего вы пытаетесь достичь. Вы просто хотите отображать текущее время и время с интервалом в 1 секунду? –