Уявімо, у нас є прості вимірювання за допомогою Stopwatch
public void DoWork()
{
var timer = Stopwatch.StartNew();
// some hard work
Logger.Log("Time elapsed: {0}", timer.Elapsed);
timer.Stop(); // Do I need to call this?
}
За даними MSDN:
У типовому сценарії секундоміра ви викликаєте метод Start, потім врешті-решт викликаєте метод Stop , а потім перевіряєте минулий час за допомогою властивості Elapsed.
Я не впевнений, чи варто викликати цей метод, коли мене більше не цікавить екземпляр таймера. Чи слід "розчищати" Stopметодом?
РЕДАГУВАТИ
Майте на увазі, що Logger.Log (..) не коштує нічого, тому що timer.Elapsedчитається перед журналами реєстратора.
Stopметоді запобігає вас від необачних помилок, наприклад , якщо ви оцінкаElapsedвласності кілька разів.