[Top Page][Edit][Discussion][Edit History][All Pages][Recent Changes][->Japanese]

HSPHelp:await


await

await p1,p2                     [一定時間待つ(ACTIVE)]

    p1=0〜(0) : 待ち時間(1ms単位)
    p2=0〜(-1) : スリープ間隔(1ms単位) (デフォルト値= -1)

説明

プログラムの実行を一定時間だけ中断します。

HSPHelp:wait命令と似ていますが、HSPHelp:await命令は前回waitした時間からの待ち時間を指定します。 これにより、描画速度の違いなどから時間が早く過ぎることを防止することができます。 リアルタイムで更新される画面などの速度を一定に保つ時に使用します。

p2のスリープ間隔が0の場合は、ver2.55までのHSPHelp:awaitと同様に CPU処理を100%奪って時間の調整を行ないます。 p2が1以上の場合は、 スレッドのスリープ機能を使って指定した時間だけ反応をなくすことで時間待ちを行ないます。 スリープ間隔が大きいほどCPUの負担が軽くなりますが、 ウインドゥの書き換えなどが遅くなることがあります。通常は、 5〜10msを指定することで、CPUに負担をかけずに時間の調整をすることが可能です。 p2がマイナス値の場合は、スリープ間隔を変更しません。 起動時のスリープ間隔デフォルト値は、5に設定されています。

p1およびp2で指定する値は1msで、HSPHelp:waitの値よりも10倍細かいので注意してください。

HSPでは、他のWindowsタスクに処理時間を渡すために長い時間ループが起こる可能性がある 場所にはHSPHelp:waitHSPHelp:await命令を入れることを推奨しています。 HSPHelp:waitHSPHelp:await命令がない命令の中を長い時間ループするようなプログラムを実行すると、 ウインドゥをドラッグしにくくなったり、他のタスクに移るのに時間がかかったりします。

備考

ver2.6標準命令

参照