web-dev-qa-db-ja.com

OSX上のWindowsのQueryPerformanceCounterに相当するものは何ですか?

ライブラリをWindowsから* NIX(現在はOSX)に移植していますが、MicrosoftのQueryPerformanceCounterとQueryPerformanceFrequencyの代わりに使用できる関数はありますか?

27
Paolo

http://www.tin.org/bin/man.cgi?section=3&topic=clock_gettime (およびそこに記載されている他の関数)-Posixです! HPETが存在しない場合、より悪いカウンターにフォールバックします。 (ただし、問題にはならないはずです)

http://en.wikipedia.org/wiki/High_Precision_Event_Timer

解像度は約+ 10Mhzである必要があります。

7
Ronny Brendel

OSXの場合mach_absolute_timeおよびmach_timebase_infoは、Win32 QueryPerformance *関数に最もよく相当します。

http://developer.Apple.com/library/mac/#qa/qa1398/_index.html を参照してください。

27
Justicle

ポータブル高解像度タイミングには、ブーストの ptime を試してください。

更新(プロンプト、2年後、以下のマークのコメントによる):

最近はstd::chrono::high_resolution_clockを使用します;

5
timday

彼はOSXについて尋ねました。CoreAudioの次のAPIを使用してください。

AudioConvertHostTimeToNanos(AudioGetCurrentHostTime())
2
Chris Reed