ViViScript の実装について簡単に説明する
スクリプトコンパイルコマンド(Ctrl + F7)が実行されると、オンメモリにあるソースプログラムがコンパイルされ中間コードが生成される。それを中間コードインタープリタが解釈実行することによりスクリプトが実行される。スクリプトのコンパイル・実行はある程度の時間を要するので、これらの処理をマルチスレッドで処理することで応答性を改善している。
Compile command │ ↓ ┌────────────┐ ワーカスレッド │スクリプトスレッドを生成│────────┐ └────────────┘ │ │ ↓ │ ┌───────┐ │ │ コンパイラ │中間コード生成 │ └───────┘ ↓ ↓ ┌──────────┐ ┌───────┐ │ メッセージループ │←───→│インタープリタ│解釈・実行 └──────────┘ message └───────┘ │ ↓ スレッド終了
中間コードの実行はインタプリタで行われる。これはワーカスレッドで動作するので、ViVi本体が管理するドキュメントやビューオブジェクトを直接参照または操作することはできない。そこで、インタプリタは必要に応じてメッセージパッシングをメインスレッドと行い、必要な処理を行う。
Copyright (c) 1998 by Nobuhide Tsuda, All Right Reserved.
このホームページに関するご質問、ご要望、バグレポート等は
ntsuda@beam.ne.jp
までメールをいただければ幸いです。