результата я не жду - мне просто надо было чтоб отработала функция, я добавлял логи на всех стадиях, до вызова if и после. Лог после ифа уже не выводится но и Api.Restart() не срабатывал. И поток не завершался, как обычно.
Да, я понял куда смотреть, спасибо.
@35xakers тоже сталкивался с таким, видимо изначально ресурс был создан как "брать и удалять", я решал только созданием нового ресурса с другим именем и использовать "только чтение"