Популярное

Музыка Кино и Анимация Автомобили Животные Спорт Путешествия Игры Юмор

Интересные видео

2025 Сериалы Трейлеры Новости Как сделать Видеоуроки Diy своими руками

Топ запросов

смотреть а4 schoolboy runaway турецкий сериал смотреть мультфильмы эдисон
dTub
Скачать

CppCon 2018: Geoffrey Romer “What do you mean "thread-safe"?”

Автор: CppCon

Загружено: 2018-11-09

Просмотров: 31442

Описание:

http://CppCon.org
—
Presentation Slides, PDFs, Source Code and other presenter materials are available at: https://github.com/CppCon/CppCon2018
—
How can we communicate with other developers about the safety of our C++ code against the hazards of concurrency? Terms like "thread-safe" don't always have a clear meaning, and more precise terms like "data race" and "race condition" often operate at the wrong level of abstraction. In order to communicate effectively about these issues, we need straightforward ways to talk about the safety requirements that APIs impose, and what goes wrong if you violate them.

In this talk, I will present the simple yet precise vocabulary we use for talking about these issues at Google: an "API race" happens when two operations access the same object concurrently, in violation of its contract. For most C++ types, that contract can be classified as "thread-safe" or "thread-compatible" depending on what combinations of operations can cause an API race (the remainder are called "thread-unsafe"), and that two-word classification usually tells you everything you need to know to avoid API races on the object. This is significant because if you can avoid API races, you can avoid not only all data races but also many race conditions.
—
Geoffrey Romer, Google
Software Engineer

I'm a Staff Software Engineer on the C++ Library Team at Google, and the lead author of Google's C++ concurrent programming guide. My work focuses on improving the C++ programming experience at Google and beyond, which has led me to focus on problem areas such as concurrent programming, error handling, hashing, and memory management. I'm a co-owner of Google's C++ style guide, and have been active on the C++ Standards committee since 2014, including a stint as editor of the Library Fundamentals TS. Currently, I'm leading Google's efforts to adopt coroutines in C++, and working on API designs for mitigating speculation attacks such as Spectre Variant 1.
—
Videos Filmed & Edited by Bash Films: http://www.BashFilms.com

*-----*
Register Now For CppCon 2022: https://cppcon.org/registration/
*-----*

CppCon 2018: Geoffrey Romer “What do you mean "thread-safe"?”

Поделиться в:

Доступные форматы для скачивания:

Скачать видео mp4

  • Информация по загрузке:

Скачать аудио mp3

Похожие видео

CppCon 2018: Mathieu Ropert “Early Modern C++: How to Handle a C++03 Codebase in $CURRENT_YEAR”

CppCon 2018: Mathieu Ropert “Early Modern C++: How to Handle a C++03 Codebase in $CURRENT_YEAR”

CppCon 2018: Stoyan Nikolov “OOP Is Dead, Long Live Data-oriented Design”

CppCon 2018: Stoyan Nikolov “OOP Is Dead, Long Live Data-oriented Design”

How to Tame Packs, std::tuple, and the Wily std::integer_sequence - Andrei Alexandrescu

How to Tame Packs, std::tuple, and the Wily std::integer_sequence - Andrei Alexandrescu

How Much Memory for 1,000,000 Threads in 7 Languages | Go, Rust, C#, Elixir, Java, Node, Python

How Much Memory for 1,000,000 Threads in 7 Languages | Go, Rust, C#, Elixir, Java, Node, Python

CppCon 2017: Louis Brandy “Curiously Recurring C++ Bugs at Facebook”

CppCon 2017: Louis Brandy “Curiously Recurring C++ Bugs at Facebook”

How to write a Concurrent Thread-safe Queue from scratch?

How to write a Concurrent Thread-safe Queue from scratch?

ДЕНЬ 1408: ВОЙНА ПРОДОЛЖИТСЯ ВЕСЬ ГОД @Kurbanova_LIVE

ДЕНЬ 1408: ВОЙНА ПРОДОЛЖИТСЯ ВЕСЬ ГОД @Kurbanova_LIVE

CppCon 2018: Andrei Alexandrescu “Expect the expected”

CppCon 2018: Andrei Alexandrescu “Expect the expected”

Branchless Programming in C++ - Fedor Pikus - CppCon 2021

Branchless Programming in C++ - Fedor Pikus - CppCon 2021

CppCon 2017: Ansel Sermersheim “Multithreading is the answer. What is the question? (part 1 of 2)”

CppCon 2017: Ansel Sermersheim “Multithreading is the answer. What is the question? (part 1 of 2)”

C++ FINALLY Improved Error Handling with std::expected!

C++ FINALLY Improved Error Handling with std::expected!

JVM Anatomy 101

JVM Anatomy 101

Классы, часть 30 — pIMPL (указатель на реализацию) — более стабильные API | Серия Modern Cpp, вып...

Классы, часть 30 — pIMPL (указатель на реализацию) — более стабильные API | Серия Modern Cpp, вып...

How Linux Elf Symbols Work and How They Are Used in C++ and C Programming - Anders Schau Knatten

How Linux Elf Symbols Work and How They Are Used in C++ and C Programming - Anders Schau Knatten

What Feynman Discovered About Light That NO ONE Can Explain

What Feynman Discovered About Light That NO ONE Can Explain

CppCon 2018: Alan Talbot “Moving Faster: Everyday efficiency in modern C++”

CppCon 2018: Alan Talbot “Moving Faster: Everyday efficiency in modern C++”

Condition Variable in Modern cpp and unique lock | Introduction to Concurrency in C++

Condition Variable in Modern cpp and unique lock | Introduction to Concurrency in C++

How Did RAM Get So Expensive? And How it’s Going to Get Worse…

How Did RAM Get So Expensive? And How it’s Going to Get Worse…

Handmade Hero Day 122 - Introduction to Multithreading

Handmade Hero Day 122 - Introduction to Multithreading

CppCon 2016: Timur Doumler “Want fast C++? Know your hardware!

CppCon 2016: Timur Doumler “Want fast C++? Know your hardware!"

© 2025 dtub. Все права защищены.



  • Контакты
  • О нас
  • Политика конфиденциальности



Контакты для правообладателей: [email protected]