AXZIP.spiを複数スレッドから呼び出す
(
nam
)
2003/08/02 16:52
Susieプラグインを利用するソフトを作っているのですが疑問があります。
たけちんさんが公開しているプラグインはスレッドセーフなのでしょうか?
他のプラグインの解説サイトには「プラグインはスレッドセーフにするべき」のように書いてあり
Susie本体もカタログをバックグラウンドで作成するので、たけちんさんのプラグインも
スレッドセーフだと思ったのですが、以下のような問題が起きました。
書庫のサムネイルを作るときスレッドを立て、その中でGetFileを繰り返し呼び出しています。
スレッド1つの場合は問題ないのですが、2つ以上の場合高確率でAXZIP.spiのGetFile内で
アクセス違反や固まって返ってこなくなったり、ときどき3が返ってくることもあります。
3が返ってくるファイルは、スレッドが1つのときは正常に取り出せます。
簡単なテストプログラムを作って実験してみましたが同様でした。
それぞれのスレッドで処理するファイルは別々で
GetFileのパラメータはファイル入力でメモリ出力です。
クリティカルセクションでプラグインAPI呼び出しを排他処理すると問題ありません。
プラグインは先ほどここでDLした最新の物です。(Plug-in package ver0.07)
--「AXZIP.spiを複数スレッドから呼び出す」に対するコメント--
タイトル(Subject):
お名前(Your name):
Mail address:
Password:
:入力しておくとあとで削除できます
Your message:
7thBridge P ver0.26 (c)Takechin