greenplumn ITimer 源码

  • 2022-08-18
  • 浏览 (311)

greenplumn ITimer 代码

文件路径:/src/backend/gporca/libgpos/include/gpos/common/ITimer.h

//---------------------------------------------------------------------------
//	Greenplum Database
//	Copyright (C) 2011 EMC Corp.
//
//	@filename:
//		ITimer.h
//
//	@doc:
//		A timer which records time between construction and the ElapsedMS call;
//---------------------------------------------------------------------------
#ifndef GPOS_ITimer_H
#define GPOS_ITimer_H

#include "gpos/types.h"
#include "gpos/utils.h"

namespace gpos
{
//---------------------------------------------------------------------------
//	@class:
//		ITimer
//
//	@doc:
//		Timer interface;
//
//---------------------------------------------------------------------------
class ITimer
{
private:
public:
	ITimer(const ITimer &) = delete;

	// ctor
	ITimer() = default;

	// dtor
	virtual ~ITimer() = default;

	// retrieve elapsed time in micro-seconds
	virtual ULONG ElapsedUS() const = 0;

	// retrieve elapsed time in milli-seconds
	ULONG
	ElapsedMS() const
	{
		return ElapsedUS() / GPOS_USEC_IN_MSEC;
	}

	// restart timer
	virtual void Restart() = 0;

};	// class ITimer

}  // namespace gpos

#endif	// !GPOS_ITimer_H

// EOF

相关信息

greenplumn 源码目录

相关文章

greenplumn CAutoP 源码

greenplumn CAutoRef 源码

greenplumn CAutoRg 源码

greenplumn CAutoTimer 源码

greenplumn CBitSet 源码

greenplumn CBitSetIter 源码

greenplumn CBitVector 源码

greenplumn CDebugCounter 源码

greenplumn CDouble 源码

greenplumn CDynamicPtrArray 源码

0  赞