こんにちは
UiPath Studio 2024.10.4Community editionのユーザです。
1.やりたいこと
メモリ上のimage変数を削除したい。
2.悩んでいること
以前有識者の方に、Invoke methodでDisposeメソッドを呼び出す方法を習いましたが、(添付画像参照)

Community Editionのバグでこの方法は使えないため、下記の代入文で代替できないでしょうか。
img = Nothing
こんにちは
UiPath Studio 2024.10.4Community editionのユーザです。
1.やりたいこと
メモリ上のimage変数を削除したい。
2.悩んでいること
以前有識者の方に、Invoke methodでDisposeメソッドを呼び出す方法を習いましたが、(添付画像参照)

Community Editionのバグでこの方法は使えないため、下記の代入文で代替できないでしょうか。
img = Nothing
参考になりますが、変数にnullを代入しても、その変数からの参照が破棄されるだけで、確保されているリソースが即座にリリースされる訳ではありません。
今回の目的によってはDisposeの代わりにはなり得ないと思います。
ありがとうございます。早くCommunity EditionでInvokeMethodが使えるようにしていただきたいものです。
試せていませんが、InvokeCodeにIN型でその変数を渡して、その中でDisposeすれば破棄されるように思えますので、一度試してみてはと思います。
即座にリリースされなくても、一定時間経過すれば、ガーベッジコレクションされるか、他の変数の値で上書きされないのでしょうか。
アンマネージドリソースなのて、GCでは解放されません。解放されていないメモリ領域に、通常他の情報が上書きされることはありません。
IF文の部分はInvokeCodeの外でも書けるので、中身の最小は image.Dispose() になるかと思います。
Disposeしない場合はメモリリークの可能性が出てくるということになりますので、そのような事象が顕在化している場合は、それが発生しないことが取り急ぎの確認方法になるかと思います。
そのような事象を経験してないのでよく分かりませんが、メモリーリークしたら、「メモリーリークしました。」というエラーメッセージが出るのでしょうか?
メモリがリークしたからと言って必ず例外が出るわけではありません。
結果としてリソース不足などにつながり例外が出ることがあります。
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.