> А что насчёт использования файлового дескриптора после закрытия файла?Если использовать File из std, то он закрывается автоматически при уничтожении объекта. Уничтожить объект File - единственный способ закрыть файл. Так как объект уничтожен, то использовать после закрытия нечего.
> Использования ресурса после снятия эксклюзивной блокировки на него?
В std и прочих библиотеках в Rust примитивы синхронизации пишут так, что они владеют объектом, который синхронизируют. И API примитивов устроен таким образом, что невозможно получить доступ к объекту без того, чтобы не получить блокировку (если предполагается изменение объекта). Снятие блокировки происходит при уничтожении объекта-гарда, но именно через него только и возможен доступ к исходному защищенному объекту. После уничтожения доступ к объекту получить не откуда.
> Удаление элемента из коллекции в процессе итерирования и неучёт этого при дальнейших итерациях?
Со стандартными итераторами в Rust невозможно удалить объект в процессе итерирования. Дело в том, что вы когда итерируетесь, вы должны заимствовать коллекцию по ссылке (изменяемой или неизменяемой). Но для удаления объекта вам также необходимо иметь изменяемую ссылку на коллекцию. Но в процессе итерирования у вас уже используется одна ссылка, а правила заимствования разрешают мутабельной ссылке быть только уникальной. Так что компилятор не допустит изменяемого обращения по ссылке, когда в скопе уже есть другое заимствование (на сам итератор).
> Обращение к процессу после его завершения?
Поясните, какие обращения к процессу вы имеете ввиду?