TGViewer
C++ and other lectures C++ and other lectures @cpp_lects_rus · 9.94K subscribers
Post #355 10.5K
Ссылка на прошедший стрим: https://boosty.to/cpp_lects_rus/posts/234e9b91-2ae5-4701-9586-be7705f79a72

Студенческий доступ я сохраню, всё-таки многое там я слишком прямо говорю для совсем уж публичного доступа.

Те моменты до которых вы можете захотеть прицельно долистать:
00:25:30 Несколько саркастический обзор программы магистратуры ИТМО.
00:52:15 Немного про инфоцыган. Мой несостоявшийся 18-летний продюсер и его офигенные картинки.
02:24:00 Обзор сформированной программы C++Russia, куда я пойду, куда нет.

—-

Немного забавного take-away.

На стриме был задан интересный вопрос. Я его докрутил до следующего примера.

int x;
int *p = &x;
x = 0;
std::thread t([p]{ *p = 42; });
t.join();
use(x);


Компилятору в этом коде кажется ничто не мешает трансформировать его примерно так:

int x;
int *p = &x;
std::thread t([p]{ *p = 42; });
x = 0;
t.join();
use(x);


И тем самым создать UB (data race).

В лямбду уходит указатель, он не пересекается как область памяти, happens-before вроде нет и т.п.



На стриме я задумался и не нашёл что сказать, но сейчас после стрима я почитал стандарт и внезапно мы тут защищены.

The completion of the invocation of the constructor synchronizes with the beginning of the invocation of the copy of f.

https://eel.is/c%2B%2Bdraft/thread.thread.constr#6

Так что happens-before всё-таки есть, кто бы мог подумать ))

Дмитрий, который задавал вопрос, FYI.

#boosty #questions
  • ❤ 42
  • 👍 21
  • 🔥 4
  • 🤯 2
  • 😱 2
  • 👎 1
  • 🙏 1
  • 🌭 1
More from @cpp_lects_rus
  1. Sep 22, 2026В четверг вечером провожу встречу со студентами и преподавателями ВШЭ. В планах: короткий…
  2. Sep 19, 2026Многие люди, прошедшие мой базовый курс языка C спрашивали -- а что дальше. Ведь мир языка…
  3. Sep 12, 2026Участвую в Ghost in the Code, рассылке YADRO о работе с легаси на C++. Удивительно ламповы…
  4. Sep 10, 2026Выложили доклад моего аспиранта и коллеги Владислава Белова @sick_hoof по алиасингу памяти…
  5. Sep 5, 2026Мне начали кидать в личку всякие странные видео из бентосных интернетов, появляющиеся (сей…
  6. Sep 3, 2026Выложили доклад моего студента и коллеги Саши Романова про рефлексию в C++. С моей точки з…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →