過去の桐井戸端BBS (桐ver.8)
12048 「ライブラリ」コマンドの実行速度 Ogo 2001/06/30-20:21
先ほどマニュアルを見ていたら、 *.kev でも「ライブラリ」コマンドが使えるように書いてあり、
「おっこりゃこりゃ」と思ったのですが……

しかし、確か「ライブラリ」コマンドを使うと、実行速度が極端に落ちるような発言を見たような気がします。

さて、実際のところ、どんなものなのでしょうか?
「ライブラリ」コマンドを実際にお使いの方、実感をお教え下さい。

12052 Re:「ライブラリ」コマンドの実行速度 尾形 2001/06/30-21:23
記事番号12048へのコメント
Ogoさん、こんばんは
Ogoさんにたいして発言するのは大変恐縮ですが・・・

>しかし、確か「ライブラリ」コマンドを使うと、実行速度が
>極端に落ちるような発言を見たような気がします。
えっ、そうなんですか。初耳でした (^^;
全く意識せずに使ってました。

私はフォームを定義して、イベントを定義したら必ず決まった処理(解像度による倍率の変更)等を
ライブラリで実行しますが、別に感じませんが。
よく使うルーチンもライブラリ化してます。

ライブラリと非ライブラリでの比較はとったことないです

12053 Re:「ライブラリ」コマンドの実行速度 悲しげ 2001/06/30-21:36
記事番号12052へのコメント
私も「ライブラリ」コマンドを幾つか使っていますが、少なくとも体感的にはさほど変化があるようにも思えません。
まして「極端に」とは?
ただ、「ライブラリを使ったら遅くなる云々」の話は、私もどこかで目にした記憶があるような・・・ないような・・・・。
その点で、ちょっとだけ気になっていたような記憶のカケラがうっすらと・・・・、でも、体感的には冒頭のとおりです。

ただし、私が使っている「ライブラリ」はさほどの大きさでもなく、せいぜい、100〜150行程度のもんですが。
12054 Re:「ライブラリ」コマンドの実行速度 bonito 2001/06/30-22:13
記事番号12053へのコメント
私もほとんどのKEVに、1〜3個くらいのCMDをライブラリとして使っていますが、速度の事は気にもとめませんでした。 (^^;
(私のも悲しげさんと同じでCMDのサイズは極小)

ただKEVのライブラリとしてのCMDには、KEVの制限がそのまま生きて(?)いる、と思いますので
Ogoさんにとって、便利なものかどうかは...??

12055 Re:「ライブラリ」コマンドの実行速度 hidetake 2001/06/30-22:24
記事番号12054へのコメント
私もほとんどの .CMD および .KEV に共通のライブラリを設定しています。
スピードに付いては何も知りませんでしたし、遅いとか感じたことはありません。

ライブラリと言っても桐の場合、ファイルが全て別々ですので、それぞれの .CMD や .KEVに設定しないといけないし、
.CMD を渡り歩く場合も、必ず呼ばれるステートメントに入れないと意味が無いので、面倒さは感じます。

それにファイルを渡り歩くたびに、メモリからの解放・呼出が繰り返されるので、スピード的には優れているとは言えないでしょう・・・

環境設定にでも全ての共通ライブラリとして登録できるような機能があっても良さそうな気がします。


12057 Re:共通ライブラリ bonito 2001/06/30-22:38
記事番号12055へのコメント
>環境設定にでも全ての共通ライブラリとして
>登録できるような機能があっても良さそうな
>気がします。

例えば、共通変数・固有変数と同じ様に共通ライブラリとして宣言したものはユーザーが削除コマンドを発しない限り
メモリに居座っていてくれるってのはどうでしょうか?


12058 Re:共通ライブラリ hidetake 2001/06/30-22:54
記事番号12057へのコメント
>例えば、共通変数・固有変数と同じ様に
>共通ライブラリとして宣言したものは
>ユーザーが削除コマンドを発しない限り
>メモリに居座っていてくれるってのは
>どうでしょうか?

そっ! そう言う奴 (^_^;

確かに削除コマンドか、何等かの手法で解除できるようにしたり、あるいは途中からでも登録できるようにしておかないと、
創ったり変更したりする場合に一々桐を再起動する必要が出て面倒ですね! (^^;


12061 Re:「ライブラリ」コマンドの実行速度 Ogo 2001/07/01-06:42
記事番号12048へのコメント

>しかし、確か「ライブラリ」コマンドを使うと、実行速度が
>極端に落ちるような発言を見たような気がします。

「実用上、支障が出るようなことではない」と理解いたします。
ありがとうございました。


12081 Re:「ライブラリ」コマンドの実行速度 佐田 守弘 2001/07/02-00:43
記事番号12061へのコメント
Ogoさん
私もライブラリコマンドを使う事によって極端に実行速度が低下する事はないと思います。
もし速度低下が起きるとしたら、次の様な事によると思います。
・ライブラリのファイルサイズが極端に大きい
 ライブラリのcmdファイルが大きければ、当然の事ながら読み込みに時間がかかります。
 とは言え、単にcmdファイルを読み込むだけでしたら、それ程影響があるとは思えないのですが。
・ライブラリの中で時間のかかる処理をしている
 例えば共通で使う表を開いて整列し直すといった処理をフォーム開始イベントで実行しようとすると、当然の事ながら時間がかかりますね。
その様な事以外に極端に時間が低下するといった事は起こり得ない様に思うのですが。

佐田守弘(KS-00119)
12172 Re:「ライブラリ」コマンドの実行速度 Ryune 2001/07/06-10:45
記事番号12081へのコメント

参考になればとおもい、発言いたします。

**

ライブラリコマンドは非常に便利なのですが、
あまり使用はしていませんです。

邪道かもしれませんが、サブルーチンはすべてソースに埋め込んでいます。
いわば、スタティックにリンクさせている、という感じです。(ライブラリがダイナミックリンクとすればです。)

理由は、「ほんの」少しでも桐の処理を速くさせたいということです。

実際、ライブラリを使用したからといって、極端に処理速度が遅くなることは、私もないと思います。
Kevでも、Cmdでも同様にです。

ただ、ライブラリにするより、ソースそのものに埋め込んでしまうほうが、
そのkevやcmdがライブラリコマンドで読み込む時間を節約できるのも事実かと思います。

ネットワーク環境で桐を運用しているため、cmd、tbl、wfmなどのファイルはすべてサーバーに置かれており、
サーバー上にある一括処理を実行する形を取っています。桐は重たいソフトという印象が周囲では強く、
0.01秒でも処理速度を上げたいというのが、開発側の願いだからです。(・・・プルグラムな冗長なだけかもしれませんが・・・)

サブルーチンといっても、合計すれば、2000行を越えることになることもめずらしくないので、
ライブラリをつかうのとつかわないのとでは、体感速度が少し違います。

それも、スタンドアロンの環境なら、あまり気にならないのかもしれません。

ソースに埋め込むと保守が結構大変なのが、デメリットです。
ユーザーにすこしでも速いように思われたいため、そのデメリットを甘受している状態です。

ただ、最近は、複数のcmdファイルなどに対し、ソース中のサブルーチンを一括して更新するプログラムを作って
サブルーチンの保守を行うようにしています。

**

ご参考になれば。
Ryune

戻る