|
TAKA です。
マクロ作者会議室(「1946」以降のスレッド)で話題になったので
すが、秀丸担当さんからコメントがなかったようですので、こちら
で再度質問させてもらいます。
#発言量が多すぎて、埋もれてしまったようです。
マクロのヘルプには
>ロードされるのは現在の秀丸についてだけなので、nexthidemaru文
>等で他の秀丸に切り替わった場合は改めてloaddllしなおす必要が
>あります。
>freedllしないままマクロを終了すると、ロードしたdllはそのまま
>ロードされたままになります。
と記載されていますが、実際にはどのように管理されているのでし
ょうか?
秀丸はウィンドウ毎に1つのプロセスとして動作しているので、
loaddllした場合は、同じウィンドウ内で、freedllをする必要があ
^^^^^^^^^^^^^^^^^^
ると思います、しかし、このことを意識している人は少ないと思い
ますし、loaddllとfreedllの間にマクロを中断してdllがメモリ上
に残ったままになることもあると思います。
私として、秀丸のプロセスが終了する時点でロードされたdllがあ
る場合は、秀丸が開放を行って欲しいのですが。
(「その他→動作環境→ウィンドウ→秀丸の常駐」で「秀丸の瞬間
起動」がONの場合は、リサイクルする数で管理しきれなくなって、
そこからこぼれた秀丸はプロセス終了となる)
1つのプロセス内で1つのdllを管理しているということは、同じ
ウィンドウを行き来するような場合(A→B→A→B→A)は、その都
度loaddllする必要はなく、最初の1回だけloaddllしておけば良い
と思いますが、あっているでしょうか?
最後に整理しておきます。
・秀丸プロセス終了時にloaddllしたままのものは、開放してくれ
ている?
・同じウィンドウ(プロセス)であれば、loaddllし直す必要はな
い?
|
|