Я полагаю, что, возможно, нашел многопоточную ошибку UUID в Oracle Java7 Update 5, и мне было интересно, сможет ли кто-нибудь подтвердить это с помощью независимого примера. В основном, что происходит, если я вызываю UUID.Random() одновременно (я использую 64 потока), я получаю столкновение большую часть времени).
Однако, если генератор UUID разогревается, предварительно запустив тест, который просто бросает кучу UUID, кажется, что он работает нормально. Здесь суть в scala:
https://gist.github.com/3318973
Важно отметить, что я вставляю в изменяемый набор, который я синхронизирую из 64 разных потоков. Основные блоки потока, ожидающие завершения работниками, а затем проверяют, что установленный размер является тем, чем он должен быть. Столкновения печатаются по мере их возникновения.
спасибо! Адам