ここは旧式の4DドキュメントWebサイトです。最新のアップデートされたドキュメントを読むには新サイトをご利用下さい→ developer.4d.com

ホーム

 
4D v20 R7
Milliseconds

Milliseconds 


 

Milliseconds -> 戻り値 
引数   説明
戻り値  倍長整数 in マシンが起動されてからの 経過ミリ秒数

説明   

Milliseconds は、マシンが起動されてから経過したミリ秒 (1/1000秒) 数を返します。

返される値は符号付き倍長整数であり、最大2の31乗(約20億ミリ秒、または約24日間相当)です。マシンが24日を超えて実行され続けた場合、返される数値は負の値になります。

このコマンドの目的は、短い時間を高い精度で計測することにあります。その意味では24日という長さは比較のためには十分な期間に思えますが、注意すべき点があります。それは値を比較する際、2つの値の差異を計算して比較するようにするということです。値を直接比較してはいけません。一つの値は負の値で、もう一つが正の値を取っている可能性があるからです。

例題  

以下のコードは、ロックされたレコードがアンロックされるまで5秒間待ち、アンロックされていなければ終了します:

 If(Locked([Table_1]))
    $starttime:=Milliseconds
    Repeat
       DELAY PROCESS(Current process;15)
       LOAD RECORD([Table_1])
       $waittime:=Milliseconds-$starttime
    Until(Not(Locked([Table_1]))|(Process aborted)|($waittime>5000)) //最大で5秒待つ
 End if

注: 上記コード内にある様に、必ず2回のMilliseconds の呼び出しの差異を比較してください。以下の様に直接比較することは絶対にしてはいけません:

 (Milliseconds>($starttime+5000)) //この比較は決してしてはいけません。1つは正の値、1つは負の値を取りうるからです



参照 

Current time
Tickcount
Timestamp

 
プロパティ 

プロダクト: 4D
テーマ: 日付と時間
番号: 459

This command can be run in preemptive processes

 
ページの目次 
 
履歴 

初出: 4D v6

 
ARTICLE USAGE

ランゲージリファレンス ( 4D v20 R7)