Size: a a a

2021 March 03

АР

Андрей Руссков... in pro.cxx
профдеформировались
источник

D

Dmitriy in pro.cxx
Ignat Loskutov
потоки с атомиками требуют поддержки на уровне языка, их выкидывать нельзя
Не совсем
источник

D

Dmitriy in pro.cxx
Реализация атомиков с нуля ручками вполне реально, если знакомы с особенностями компилятора и набором интринсиков fence/interlocked

То же самое касается и thread (да многих вещей, из Буста пришедших)

Совершенно нельзя заменить только то, что реализуется исключительно на уровне языковых конструкций и внутренней логики компилятора
источник

АР

Андрей Руссков... in pro.cxx
вы забываете что в стандарте требуется как минимум правильный wording для того, чтобы описать требования к атомикам и потокам
источник

A

Alex in pro.cxx
Андрей Руссков
профдеформировались
это у меня PTSD
источник

D

Dmitriy in pro.cxx
Андрей Руссков
вы забываете что в стандарте требуется как минимум правильный wording для того, чтобы описать требования к атомикам и потокам
Предполагаем, что он есть
источник

АР

Андрей Руссков... in pro.cxx
ну значит в стандарте и так описаны атомики и треды и незачем выновить их в 3rd party
источник

A

Alex in pro.cxx
Андрей Руссков
вы забываете что в стандарте требуется как минимум правильный wording для того, чтобы описать требования к атомикам и потокам
Наоборот, стандарт раньше ничего не писал про атомики и потоки, он делал вид, что не знает этих концепций. Главное, чтобы не мешал их реализовывать слишком активно.
источник

АР

Андрей Руссков... in pro.cxx
потому что тогда вместо "вот у нас есть тред которым вы можете пользоваться" в стандарте будет "ну в вашей программе не будет UB если вы используете треды которые удовлетворяют вот этим требованиям:" (и дальше 1000 страниц)
источник

АР

Андрей Руссков... in pro.cxx
Alex
Наоборот, стандарт раньше ничего не писал про атомики и потоки, он делал вид, что не знает этих концепций. Главное, чтобы не мешал их реализовывать слишком активно.
"раньше" это до с++11 то, когда в стандарте не было потоков и атомиков?
источник

DP

Denis Paukaev in pro.cxx
Андрей Руссков
потому что тогда вместо "вот у нас есть тред которым вы можете пользоваться" в стандарте будет "ну в вашей программе не будет UB если вы используете треды которые удовлетворяют вот этим требованиям:" (и дальше 1000 страниц)
как же без этого люди на C++98/03 писали непойми сколько лет, интересно )
источник

A

Alex in pro.cxx
да
источник

АР

Андрей Руссков... in pro.cxx
Denis Paukaev
как же без этого люди на C++98/03 писали непойми сколько лет, интересно )
есть разница между "меня устраивает наблюдаемое поведение программы" и "моя программа не содержит UB"
источник

DP

Denis Paukaev in pro.cxx
это не ответ на мой вопрос
источник

DP

Denis Paukaev in pro.cxx
без этих 1к страниц все спокойно использовали свои pthread_create и всё работало
источник

DP

Denis Paukaev in pro.cxx
ровно то же самое с атомиками, использовались примитивы платформы
источник

DP

Denis Paukaev in pro.cxx
да, тут сейчас конечно можно расписать, что им просто везло, ведь  в стандарте про это ничего нет
источник

АР

Андрей Руссков... in pro.cxx
Denis Paukaev
без этих 1к страниц все спокойно использовали свои pthread_create и всё работало
кхе кхе винда кхе
источник

DP

Denis Paukaev in pro.cxx
и что? На винде будет CreateThread
источник

D

Dmitriy in pro.cxx
Андрей Руссков
кхе кхе винда кхе
Директивы условной компиляции все еще никто не отменял
источник