Size: a a a

2021 February 20

IZ

Ilia Zviagin in pro.cxx
Eugene Erokhin
Зависит от ABI. Для x86_64 массив имеет выравнивание своего типа, если размер не превышает 16 байт. Если превышает то идет выравнивание на 16.
Тут товарищь видимо именно в виду выравнивание всего блока массива при выделении памяти динамически. И это вообще не выравнивание. А просто адрес
источник

D

Dmitriy in pro.cxx
Есть ли серьезные различия между std::atomic и boost::atomic?
Собираюсь использовать последние на платформе, где стандартные атомики заюзать не выйдет
источник

eb

ed braed in pro.cxx
Ilia Zviagin
Адрес следующего элемента - это адрес предыдущего + sizeof элемента. ЭТО ЗАКОН
Хорошо. Да, это наверное  действительно глупое предположение.
источник
2021 February 21

DK

Dmitry Khominich in pro.cxx
Вчера обсуждали тут ПО на C++ на новом марсоходе НАСА. И вот Jason Turner заглянул внутрь фреймворка F’:

https://youtu.be/RbhufLudVsI
источник

s

std::slavik in pro.cxx
Dmitriy
Есть ли серьезные различия между std::atomic и boost::atomic?
Собираюсь использовать последние на платформе, где стандартные атомики заюзать не выйдет
поидее из буста в  стандарт с минимальными изминениями переезжает, но не ручаюсь конечно
источник

АК

Александр Караев... in pro.cxx
Dmitry Khominich
Вчера обсуждали тут ПО на C++ на новом марсоходе НАСА. И вот Jason Turner заглянул внутрь фреймворка F’:

https://youtu.be/RbhufLudVsI
Для тех, кто не хочет открывать видео, сразу ссылка на репу:
https://github.com/nasa/fprime
источник

AP

Antony Polukhin in pro.cxx
Dmitriy
Есть ли серьезные различия между std::atomic и boost::atomic?
Собираюсь использовать последние на платформе, где стандартные атомики заюзать не выйдет
Смело используйте. Если платформа сильно экзотическая - стоит прогнать тесты, или поискать платформу в тестовой матрице https://www.boost.org/development/tests/develop/developer/atomic.html
источник

EE

Eugene Erokhin in pro.cxx
ed braed
Хорошо. Да, это наверное  действительно глупое предположение.
Если речь про оверхеды, то да массивы всегда кладутся последовательно, без паддингов. И полное выравнивание всего блока памяти по алпйнменту составляющего типа. Если создается на стеке или в шлобальном скоупе, и TLS туда же, то требования к выравниванию как я ранее писал.
Про динпмическую - да тут выравнивание минимальное от разрядности зависит для 64битных, могу ошибаться но на 16 (Но да все элементы всегда последовательно).

А вот паддинги, это уже в структурах и классах. Ну и при раскладке стекового фрейма, .bss, .data и т.д.
источник

D

Dmitriy in pro.cxx
Antony Polukhin
Смело используйте. Если платформа сильно экзотическая - стоит прогнать тесты, или поискать платформу в тестовой матрице https://www.boost.org/development/tests/develop/developer/atomic.html
Благодарю!
источник

AP

Antony Polukhin in pro.cxx
Dmitriy
Благодарю!
Учтите, что оба atomic начинают использовать мьютекс, если платформа не поддерживает атомарные операции для типа данного размера (на x86 - всё хорошо, пока вы не начинаете использовать структуры в atomic)
источник

P

Pavel in pro.cxx
ed braed
Ребят, а массив фундаментальных типов (int/uint/bool etc) может как-то неочевидно выравниваться в памяти?
Ну т.е. например int32_t[256] может по каким либо причинам занимать НЕ 1024 байта?
Интересуюсь по причине желания копировать подобные штуки memcpy, но не уверен насколько это будет переносимо.
Подчеркнусь - речь именно о фундаментальных типах.
Мне казалось, что vector<bool> v(88); может занимать меньше, чем 88 байт, но это не точно
источник

IL

Ignat Loskutov in pro.cxx
Курица не птица, vector<bool> не вектор
источник

AS

Anatoly Shirokov in pro.cxx
Pavel
Мне казалось, что vector<bool> v(88); может занимать меньше, чем 88 байт, но это не точно
Речь не об этом. vector<bool> - пример "преждевременной оптимизации", баг, но автор о массивах спрашивал
источник

w

wonder in pro.cxx
Приветствую всех, подскажите пожалуйста какие-либо источники по изучению сетевого программирования
источник

w

wonder in pro.cxx
Конечно
источник

w

wonder in pro.cxx
Благодарю, посмотрю
источник

SK

Stas Koynov in pro.cxx
wonder
Приветствую всех, подскажите пожалуйста какие-либо источники по изучению сетевого программирования
Стивенс У.Р. UNIX. Разработка сетевых приложений
источник

DK

David Kravets in pro.cxx
wonder
Приветствую всех, подскажите пожалуйста какие-либо источники по изучению сетевого программирования
Я подумал ты про сис программирование
источник

NU

N U in pro.cxx
Stas Koynov
Стивенс У.Р. UNIX. Разработка сетевых приложений
Пытался найти, но в продаже не было
источник

SK

Stas Koynov in pro.cxx
N U
Пытался найти, но в продаже не было
такую только в цифре читать, ее не переиздавали :( при чем нормального нет есть только дежавю... но это классика!
источник