Bug 668355: RAII Telemetry timer r=glandium

This commit is contained in:
Taras Glek 2011-07-01 12:06:09 -07:00
Родитель 0d2216be80
Коммит cfe46ff913
1 изменённых файлов: 17 добавлений и 0 удалений

Просмотреть файл

@ -39,6 +39,8 @@
#ifndef Telemetry_h__
#define Telemetry_h__
#include "mozilla/TimeStamp.h"
namespace mozilla {
namespace Telemetry {
@ -59,6 +61,21 @@ HistogramCount
*/
void Accumulate(ID id, PRUint32 sample);
template<ID id>
class Timer {
public:
Timer():
start(TimeStamp::Now())
{
}
~Timer() {
Accumulate(id, (TimeStamp::Now() - start).ToMilliseconds());
}
private:
const TimeStamp start;
};
} // namespace Telemetry
} // namespace mozilla
#endif // Telemetry_h__