Как доказать, что Instant безопасен для потоков?
Анализировать (используя надежные математические / формальные методы) исходный код, чтобы доказать, что он соответствует всем требованиям безопасности потоков.Это единственный способ доказать что-то поточно-безопасное.
Вы не можете доказать это с помощью тестирования.
Вы можете протестировать любой не поточно-безопасный кодтак, как вы хотите, и пройти тесты безопасности.Но это ничего не доказывает.Тесты могут по-прежнему не проходить на другой платформе ОС или в других (возможно, будущих) версиях Java.
(Вы можете доказать , протестировав , если что-то НЕ является поточно-ориентированным.тест показывает неоспоримые признаки не поточно-ориентированного поведения, то есть «доказательства существования».)
Это должно быть спорным для класса Instant
. javadoc указывает , что класс Instant
является поточно-ориентированным.Если у вас нет особых причин полагать, что этот класс не является потокобезопасным (что будет подлинной ошибкой JVM ), то рекомендуется не тратить свое время на поиск вещей, которые, вероятно, не существуют.