Size: a a a

2020 August 27

AP

Alexander Potapov in pro.cxx
Ну там уже другое качество генерируемых чиспл
источник

KO

Konstantin Osipov in pro.cxx
у меня таймаут для слипа 😊
источник

KO

Konstantin Osipov in pro.cxx
нужно просто рандомизировать чтобы все разом не просыпались
источник

AK

Andrei K in pro.cxx
Ну пользуйтесь тогда
std::minstd_rand
источник

AK

Andrei K in pro.cxx
У него 8 байт стейта.
источник

AK

Andrei K in pro.cxx
Konstantin Osipov
нужно просто рандомизировать чтобы все разом не просыпались
Ух. Без контекста звучит как мисдизайн.
источник

AK

Andrei K in pro.cxx
Но вопрос был не об этом да.
источник

KO

Konstantin Osipov in pro.cxx
Andrei K
Ну пользуйтесь тогда
std::minstd_rand
но ничего static thread local в С++ заготовленного для меня нет?
источник

Rn

Roman na in pro.cxx
Konstantin Osipov
Мне кажется это просто плохая практика. У нас в софте ~400 000 строк кода сейчас. представьте каждый будет использовать static thread_local mt19937 чтобы чиселко получить.
И в чём же проблема? Ну будут пользоваться, и? Ты там madvise на стек юзаешь, если нет - тебя лишние пару страниц на тред волновать не будут.
источник

AK

Andrei K in pro.cxx
Konstantin Osipov
но ничего static thread local в С++ заготовленного для меня нет?
А что мешает объявить static thread local std::minstd_rand переменную внутри функции getEngine() ?
источник

AK

Andrei K in pro.cxx
Генераторы случайных чисел имеют стейт. Никуда от него не денешься.
источник

AK

Andrei K in pro.cxx
rand не трей-сейфовый
источник

ПК

Побитый Кирпич... in pro.cxx
Konstantin Osipov
он thread local уже
Нет, там мьютекс
источник

ПК

Побитый Кирпич... in pro.cxx
thread_local он ЕМНИП в msvc
источник

AK

Andrei K in pro.cxx
Да не, он просто не трейдсейфный.
источник

ПК

Побитый Кирпич... in pro.cxx
Andrei K
Да не, он просто не трейдсейфный.
It is implementation-defined whether rand() is thread-safe.
источник

AK

Andrei K in pro.cxx
Ага, ну короче по стандарту никто не требует. Так что если он-таки тредсейфный то там либо тред_локал либо того хуже — мьютекс.
источник

AK

Andrei K in pro.cxx
Никакой выгоды не видно.
источник

KO

Konstantin Osipov in pro.cxx
man rand, посмотрите табличку
источник

AK

Andrei K in pro.cxx
источник