2010-12-01 19 views
2

アプリケーションのアップタイムとシステムのアップタイムを取得する方法はありますか?Qt現在のアプリケーションの起動時間を取得する

ありがとうございます。

+1

Linuxシステムでは、 '/ proc/uptime'と同様のものを使用できます。このファイルには、稼働時間、アイドル時間などを報告するために使用される2つの浮動小数点数があります。あなたのプログラムは '/ proc /(program-pid)/ uptime'に同様のファイルを書き込むことができます。 Linuxシステムの場合、それはです。 – vpit3833

+0

より具体的に? – Pratik

+0

@ vpit3833 '/ proc/anything'に新しいファイルを書くことはできません。 –

答えて

0

Windowsでは、Winapi関数を呼び出すことで簡単に計算して、プロセスの開始をdatetimeにすることができます。あなたはあなたがあなたのアプリケーションの稼働時間を取得するためにはQt 4.7からQElapsedTimerクラスを使用することができますhttp://www.codeproject.com/KB/threads/ProcessTime.aspx

+1

私は、プログラムがアプリケーションの現在のアップタイムを取得し始めた現在の日付時刻を保存できるとしますが、システムアップタイムはどうですか? – Thomas

+1

@その方法には注意が必要な場合があります。 'ウォールクロック'の時間は変更できます。ユーザーまたはタイムサーバーなどによって – sje397

6

で見つけることができます

詳しい情報。可能であれば、このクラスは単調なクロックを使用します。

インスタンスを作成して、プログラムの最初にstartを呼び出してください。その時から、あなたはLinuxの

myElapsedTimer.elapsed() 
0

を呼び出すことによって、(startへの呼び出し以降、より正確か)あなたのプログラムが実行されているミリ秒数を取得することができ、あなたが経過伝えるためにtimesシステムコールを使用することができますプロセッサ時間。これは、あなたのプログラムが入力待機中のアイドル時間、または入力待ちのブロック時間、またはシステム上で実行されている他のプログラムによって先取りされた時間をカウントしません。 (したがって、これはベンチマークには非常に適しています。)

関連する問題