トップページ > 記事閲覧
DxArchive がリークしている
名前:U.S. 日時: 2015/04/11 19:16

初めて質問させて頂きます。 DxArchive で作成したファイルからMMDモデルをロード(MV1LoadModel)すると、内部でメモリリークが発生しているようです。 ↓プログラム終了時のログ↓ 3715: 3715:Alloc memory dump 3715: size: 1432( 1.398kb) file:\DxArchive_.cpp line:3202 ID:33 addr:0aee5768 data:... 3716: size: 1112( 1.086kb) file:\DxArchive_.cpp line:1448 ID:32 addr:0aee5298 data:... 3716: size: 640( 0.625kb) file:s\DxFileWin.cpp line:245 ID:31 addr:0aee4fa0 data:... 3716: Total size:3184(3.109kb) Alloc num:3 3716: モデル読み込み時にアーカイブ展開処理も同時に行われているが、モデル破棄時にはアーカイブの終了処理が行われない。(終了していいか判断つかないから?) という事だと思い、以下の実験を行いました。 【その1:リークなし】 MV1DeleteModel の後に DXArchiveRelease で対象の dxa を解放してやる。 【その2:リークあり】 SetDXArchiveExtension で拡張子を変更。 MV1DeleteModel の後に DXArchiveRelease で対象のアーカイブを解放してやる。 (結果、されていない) 【その3:リークなし】 LoadGraph で bmp を読み込むだけ。 DXArchiveRelease はしない。 結論として ・ dxa 拡張子のままで ・ DXArchiveRelease も行う のが回避手段だと思ったのですが、以下の3点について質問させて下さい。 1. 他に回避手段はあるのか?(できれば拡張子は変更して運用したい) 2. そもそもの使い方を間違えているのか? 3. ライブラリ側の不具合なのか? 長々と失礼致しました。 宜しくお願い致します。
メンテ

Page: 1 |

Re: DxArchive がリークしている ( No.1 )
名前:管理人 日時:2015/04/12 12:12

すみません、DXライブラリのバグです 修正版をアップしましたので、よろしければお使いください m(_ _;m https://dxlib.xsrv.jp/temp/DxLibVCTest.exe // VisualC++ 用 https://dxlib.xsrv.jp/temp/DxLibBCCTest.exe // BorlandC++ 用 https://dxlib.xsrv.jp/temp/DxLibGCC_DevCppTest.exe // Dev-C++ 用 https://dxlib.xsrv.jp/temp/DxLibGCC_MinGWTest.exe // MinGW 用 https://dxlib.xsrv.jp/temp/DxLibDotNet.zip // .NET用 https://dxlib.xsrv.jp/temp/DxLibMakeTest.exe // ソース (中身を既存のライブラリのファイルに上書きして、BCCをお使いの 場合は『再構築』を、VCをお使いの場合は『リビルド』を、 Dev-C++をお使いの方は「Rebuild All(Ctrl+F11)」をして下さい)
メンテ
Re: DxArchive がリークしている ( No.2 )
名前:U.S.(解決) 日時:2015/04/12 15:38

お忙しい中、早速のご対応を誠にありがとうございます! またこちらの開発環境を記していなかったため、余計なお手間を取らせてしまい申し訳ありません。 VisualC++用のexeとソースを頂きました。 ・DXArchiveRelease をせずともメモリが解放されている ・拡張子を変更しても問題ない 上記2点の確認が取れましたので、これにて解決とさせて頂きます。 とても洗練されたライブラリに加え、ホスピタリティ溢れるサポートをありがとうございます。 今後とも宜しくお願い致します。
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存