Ich vermute mal, dass der Close u.U. nicht erreicht wird.
Ein Open erhöht den Share-Zähler (falls Share aktiv) und ein CLose vermindert diesen wieder.
Das Programm C sollte sich mit *INLR = *ON verabschieden.

SHARE(*YES) birgt meiner Meinung nach sowieso viel zu viele Gefahren ins besonders wenn man auch noch mit diversen ACTGRP's umgeht.