Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > win32oleライブラリ > WIN32OLE_EVENTクラス > unadvise

instance method WIN32OLE_EVENT#unadvise

unadvise -> ()[permalink][rdoc]

イベント通知元をオブジェクトから切断します。

当メソッド実行後は、イベント通知を受けられなくなります。また、このオブジェクトを利用したWIN32OLE_EVENT#on_eventなどの呼び出しはエラー(WIN32OLERuntimeErrorの通知)となります。

WIN32OLE_EVENTオブジェクトは一度生成すると、イベントハンドラが登録されている限りオブジェクトを解放しません。というのは、イベントの通知元のオブジェクトと相互参照されるため、自動的に解放することができないからです。結果として、OLEオートメーションサーバの解放もスクリプトが終了するまで行われません。

この状態が望ましくないアプリケーション(サーバがリソースを消費する、あるいはスクリプトの寿命が非常に長いなど)で、積極的にサーバを解放したい場合に限り、当メソッドを呼び出してください。