В Guava 10+ Google устарел Files.deleteDirectoryContents(). JavaDoc говорит
Устарело. Этот метод страдает от плохого обнаружения символических ссылок и условий гонки. Эта функциональность может быть поддержана должным образом только с помощью команд операционной системы, таких как rm -rf или del /s. Этот метод планируется удалить из Guava в выпуске Guava 11.0.
Я смущен тем, почему существует состояние гонки. Я думаю, что этот метод на самом деле полезен, и считаю, что обстрел операционной системы плохим решением. Могут ли авторы поделиться, почему они приняли такое решение?
ArrayList
, не являются потокобезопасными или имеют условия гонки. Даже уFile.remove
такая же проблема. Но все они задокументированы. Поэтому я надеялся услышать ответ помимо того, что уже сказано в документации о том, почему они решили сделать его устаревшим. - person Amir Raminfar   schedule 30.11.2011