Stopwatch.reset în Dart

Aduce timpul cronometrului la zero, fără să-l oprească sau să-l pornească.

Sintaxă
void reset()

Ce face Stopwatch.reset

reset() șterge timpul măsurat până acum. Starea cronometrului rămâne aceeași: dacă era pornit, continuă să meargă de la zero; dacă era oprit, rămâne oprit, cu zero.

Este util când refolosești același cronometru pentru mai multe măsurători. Pentru „oprește și pornește din nou de la zero” scrie sw..reset()..start().

Ce returnează

Nimic (void).

Exemple

Exemplul 1: reset pe un cronometru oprit și pe unul pornit

import 'dart:io';

void main() {
  var sw = Stopwatch()..start();
  sleep(Duration(milliseconds: 20));
  sw.stop();
  print(sw.elapsedMilliseconds >= 20);
  sw.reset();
  print(sw.elapsedMicroseconds);
  print(sw.isRunning);

  sw.start();
  sleep(Duration(milliseconds: 20));
  sw.reset();
  print(sw.isRunning);
  print(sw.elapsedMilliseconds < 20);
}

Rezultat

true
0
false
true
true

Exemplul 2: Timpul pe tură

Un singur cronometru măsoară fiecare tură; timpii diferă de la o rulare la alta.

import 'dart:io';

void main() {
  var sw = Stopwatch()..start();
  for (var tura = 1; tura <= 3; tura++) {
    sleep(Duration(milliseconds: 100 * tura));
    print('Tura $tura: ${sw.elapsedMilliseconds} ms');
    sw.reset();
  }
}

Rezultat posibil (diferă la fiecare rulare)

Tura 1: 102 ms
Tura 2: 202 ms
Tura 3: 305 ms

Greșeli frecvente

  • Crezi că reset() oprește cronometrul. Dacă era pornit, continuă să meargă; apelează și stop() dacă vrei să-l oprești.

Comenzi înrudite

  • Stopwatch: Un cronometru pentru măsurarea timpului scurs; start() îl pornește, stop() îl oprește, isRunning spune dacă merge.
  • Stopwatch.elapsed: Timpul măsurat de cronometru: ca Duration (elapsed) sau ca număr de milisecunde (elapsedMilliseconds).