Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Ruby3.x】clock_getres()関数の使い方

clock_getres関数の使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

clock_getres関数は、特定のシステムクロックが持つ時間の解像度、つまり時間計測の最小単位や精度を取得する関数です。この関数は、引数としてクロックIDと呼ばれる値を一つ受け取ります。クロックIDには、例えばシステムの絶対時間を示すCLOCK_REALTIMEや、システム起動からの経過時間を示すCLOCK_MONOTONICといった定数を指定します。

指定されたクロックIDに対応する時間の解像度は、秒とナノ秒のペアとして、[秒, ナノ秒]という形式の配列で返されます。この戻り値は、そのクロックが時間をどれだけ細かく区別できるか、その計測能力の限界を示しています。例えば、解像度が[0, 1]であれば1ナノ秒単位で時間を計測できることを意味し、[0, 1000]であれば1マイクロ秒(1000ナノ秒)単位での計測が最小となります。

システムエンジニアがこの関数を利用する主な目的は、時間計測の精度を把握することです。特に、プログラムのパフォーマンス測定やリアルタイム処理を行うアプリケーション開発において、使用するクロックの精度を知ることは、計測結果の信頼性を評価したり、より正確な時間処理を設計したりするために非常に重要です。システムやOSのバージョンによってクロックの解像度は異なる場合があるため、この関数を使って実際のシステムでの精度を確認することが推奨されます。

構文(syntax)

1puts Process.clock_getres(Process::CLOCK_MONOTONIC)

引数(parameters)

rest

  • rest: 取得するクロックの解像度を指定する整数

戻り値(return)

Integer

clock_getresは、指定されたクロックの分解能を整数で返します。分解能とは、時間を測定できる最小単位のことで、この値が小さいほど、より高精度な時間測定が可能になります。

関連コンテンツ

関連プログラミング言語