Что означает индетерминированное поведение? - PullRequest
2 голосов
/ 30 августа 2011

Я видел, что этот термин часто использовался в книге Джошуа Блока Эффективная специальность Java по предмету, связанному с методом клон, так что некоторые могут объяснить, что он означает и примеры его?

Спасибо.

Ответы [ 3 ]

8 голосов
/ 30 августа 2011

Недетерминированная или, как правило, недетерминированная система - это недетерминированная система.Детерминизм описан в Википедии как:

В математике [и информатике] детерминированная система - это система, в которой нет случайности в развитии будущего.состояния системы.Таким образом, детерминированная модель всегда будет производить один и тот же вывод из заданного начального условия или начального состояния.

Другими словами, недетерминированная система - это та, в которой нет гарантии, что один и тот же ввод всегдапроизводить тот же вывод.

4 голосов
/ 30 августа 2011

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

Ошибки безопасности потоков являются наиболее распространенным примером недетерминированного поведения.

http://www.google.com/search?q=thread+safety+examples ~ 4M результаты.

0 голосов
/ 30 августа 2011

Практически, недетерминированный означает, что когда вы запускаете программу несколько раз с одними и теми же входами, выходные данные могут отличаться.

Для метода клонирования я не знаю, у меня неткнига, извините.

...