Как стать автором
Обновить

Комментарии 8

Не понятно в чем виноват автор?

У API есть комбинация параметров, которая гарантированно приводит к зависанию:

  • если corePoolSize=0 допустимое значение при других параметрах, значит надо делать валидацию параметров

  • если не допустимое, то API его в принципе не должен принимать, опять же речь про валидацию

Странно ожидать что пользователи должны присылать только валидные данные и читать все пункты со звездочкой в документации.

Могу напомнить про срачик среди разработчиков glibc в 2010: «имеет ли memcpy(3) право ожидать, что участки памяти не перекрываются, если в документации и в стандарте на протяжении десятилетий указывалось требование, что участки памяти должны не перекрываться».
Срачик завершился вмешательством Торвальдса: «Standards are paper. I use paper to wipe my butt every day. That's how much that paper is worth.»

Ну это прям совсем вырвано из контекста. Его аргумент про другое - Линус считает что мейнтейнерам нельзя допускать регрессии, прикрываясь стандартом чтобы переложить вину на разработчиков прикладного кода. Даже если прикладной код - позже печально известный своей багованностью flash player. Но попробуй в код Линуса занести что-то не соответствующее стандарту и он отправит тебя в путешествие ничуть не ближе.

Странно ожидать что пользователи должны присылать только валидные данные и читать все пункты со звездочкой в документации.

ну вообще-то считается (считалось?), что программисты — достаточно продвинутые пользователи, которые таки читают документацию.

если читать документацию на такие простые констукции(без особой необходимости) — софт будет писаться очень и очень долго

Это не отменяет того факта, что можно было бы проверить параметры на заведомо некорректные значения и кинуть какой-нибудь InvalidArgumentException, в данном случае 0.

А если не читать документацию по всем нюансам, который не до конца понимаешь и следовать принципу "ну, ничего страшного, операц.система/вирт.машина разберутся", то можно прийти к ситуации, когда пару вкладок в браузере съедают больше памяти, чем в своё время съедали игрушки или сложные программные комплексы.. хотя подождите...

вы так говорите словно браузер это блокнот какой-то, а не renderer+vm+sandbox сразу для нескольких языков...

Зарегистрируйтесь на Хабре, чтобы оставить комментарий