SWX610のcreate_SWX関数、destroy_SWX関数の短期間繰り返しで上位アプリ(呼び出し側アプリ)のメモリリークが発生することを確認しています。実行回数が少なくなるよう実装してください。
○弊社推奨処理
・アプリ起動時/フォームopen時など初期処理でcreate_SWXを一回実行
・eprなどのコマンド処理、ループ処理
:
・アプリ終了時/フォームclose時など終了処理でdestroy_SWXを一回実行
●メモリリーク発生のパターン
コマンド処理毎にcreate_SWX、destroy_SWXを繰り返す
・create_SWX/com_check_SWX + select_module_SWXなど + END_status_SWXのループ + destroy_SWX
・create_SWX/com_check_SWX + EPRな_SWXなど + END_status_SWXのループ + destroy_SWX
のように、コマンド処理の都度create_SWX、destroy_SWXを頻繁に繰り返すとWindowsOS側のTCPポートの解放が追いつかずメモリリークします。
SWX610/DLL側で対処する方法がないので、なるべくcreate_SWX、destroy_SWXの実行回数を減らす(前述の開始終了時のみの手法)や、定期的にアプリ終了などの対処が必要となります。