Prozesszeit ermitteln

grer

Grünschnabel
Hallo,

ich suche eine Funktion, mit der ich die Dauer eines Prozesses ermitteln kann.
Ich verwende Visual Studio 6. Das Programm sieht ungefähr so aus:

int main
{
Connect auf die Datenbank
Verschiedene Operationen
Close der Datenbank
}

Nun möchte ich wissen, wie lange das Connect, die Operationen und das Close dauern. Anschließend möchte ich die Zeit auf der Console ausgeben.

Kann mir da bitte jemand weiterhelfen,
Danke
grer
 
Du könntest z.B. sowas machen:
Code:
#include <windows.h>
#include <iostream>

DWORD dwStart = GetTickCount();

// ... Connect auf die Datenbank
// ... Verschiedene Operationen
// ... Close der Datenbank

DWORD dwProcessingTime = GetTickCount() - dwStart; // Zeitdauer in Millisekunden

cout << "Processing Time: " << dwProcessingTime << endl;
Gruß
MCoder
 
Hallo zusammen,

also ich hab das ganze mal eingebaut wie folgt:

(Wobei es sich nur um Auszüge aus den jeweiligen Funktionen handelt...)
Code:
const DWORD MAX_SEND_TIME	= 60;
---------------------------------------------------------------
->sendTelegram(void)
{
	DWORD dwStart = GetTickCount();
	bool continue2Send(true);	
	do			//Send telegram
	{
		hr = m_pIComm->Send(m_VariantPeBusDataS);
		if(hr == S_OK)
		{
			Sleep(5);
			checked = checkSendedTelegram();	//Is the sended telegram on the Bus?
		}
		DWORD dwSendTime = GetTickCount() - dwStart; 
		if(dwSendTime >= MAX_SEND_TIME)
			continue2Send = false;
	}while((hr != S_OK && !checked) && continue2Send);
}
---------------------------------------------------------------------------------------
->checkSendedTelegram(void)
{
	DWORD dwStartCheck = GetTickCount();	
	do
	{
		hrTemp = m_pIComm->Receive(&m_VariantPeBusDataR);
		if(hrTemp == S_OK)
		{
			setArrayFromVARIANT(m_VariantPeBusDataR, m_aRecBuf);			
            checked = checkSendedData();
		}
		DWORD dwSendTime = GetTickCount() - dwStartCheck; 
		if(dwSendTime >= MAX_SEND_TIME)
			continue2Check = false;
	}while((hrTemp != S_OK || !checked) && continue2Check);
}

Kann es sein dass die Geschichte nicht immer ?
Weil es manchmal vorkommt, dass er ganz offensichtlich die zeitanweisungen nicht beachtet und wie verrückt Telegramme rausknüppelt...
Ohne dass die Wartezeiten berücksichtigt werden. Oder mach ich hier einen Fehler?

Grüße
RuFF
 
Zurück