Skip to content

ZH TW CSharp Time

Codex edited this page Oct 11, 2026 · 2 revisions

Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어

日期、時間、間隔和計時器

手冊C# · 範例UO

DateTime 和 DateTimeOffset 描述日期和時間,TimeSpan 間隔,DateOnly/TimeOnly 各個部分。要測量持續時間,請使用Stopwatch;系統時鐘可能會改變。計時器依時間表呼叫程式碼,並不確認遊戲事件。

簡單範例 (Example.cs)

請將此範例另存為 Example.cs,並與本頁其他範例分開執行。

Example.cs:

// PROJECT-EXAMPLE
var delay = System.TimeSpan.FromMilliseconds(10);
await System.Threading.Tasks.Task.Delay(delay);
System.Console.WriteLine("Done");

結果:

Done
var started = System.Diagnostics.Stopwatch.StartNew();
await WaitAsync(100);
UO.Print($"Elapsed: {started.ElapsedMilliseconds} ms");
DateTimeOffset now = DateTimeOffset.UtcNow;
TimeSpan interval = TimeSpan.FromSeconds(2);
UO.Print($"UTC: {now:O}; interval: {interval.TotalMilliseconds} ms");

對於週期性非同步等待,有PeriodicTimer。腳本完成後釋放計時器並將Cancellation傳送到WaitForNextTickAsync。劇本中的停頓和現實時間的流逝是兩件不同的事情。

官方文件:日期、時間、間隔和計時器 - Microsoft Learn。

Clone this wiki locally