get-internal-real-time

Title
get-internal-real-time
Type
Function
Arguments
get-internal-real-time
Package
lisp
Section
日付・時間
File
builtin.l
内部的にGetTickCountを呼び出しています。GetTickCountはMSDNによると
システムを起動した後の経過時間を、ミリ秒(ms)単位で取得します。
この時間は、システムタイマの分解能による制限を受けます。
システムを 49.7 日間連続して動作させると、経過時間は 0 に戻ります。

だそうです。

使用例:  
  ;;普通に呼び出す。整数が帰ってくる
  (get-internal-real-time)
  =>984001406

  ;;書式付で起動時間を表示
  (let ((tick (get-internal-real-time))
        d h m s ms)
    (multiple-value-setq (tick ms)
        (truncate tick 1000))
    (multiple-value-setq (tick s)
        (truncate tick 60))
    (multiple-value-setq (tick m)
        (truncate tick 60))
    (multiple-value-setq (d h)
        (truncate tick 24))
    (format nil "PC起動経過時間 day ~D time ~2,'0D:~2,'0D:~2,'0D.~3,'0D" d h m s ms))
  =>"PC起動経過時間 day 11 time 09:20:04.578"
Seealso
internal-time-units-per-second
si:performance-counter