Главная
Study mode:
on
1
Introduction
2
Outline
3
Sharing a Container
4
MultiThreaded Containers
5
Update Groups
6
Motivation
7
Acid Database
8
Sharding
9
Mutexes
10
Strict timestamp ordering
11
Atomic integer
12
Transaction
13
Update Operations
14
Design Choices
15
Shared Containers
16
Code
17
LockableItem
18
Timestamp
19
Member Functions
20
Commit
21
Subtlety
22
Test Strategy
Description:
Explore a multithreaded, transaction-based locking strategy for containers in this conference talk from C++Now 2019. Dive into the challenges of sharing containers among multiple threads in C++ applications, particularly when dealing with frequent write operations. Learn about an algorithm implemented in C++17 that provides atomicity, consistency, and isolation for simultaneous reads and writes on a single container. Discover how this approach, based on strict timestamp ordering, minimizes spatial overhead while avoiding data races and deadlocks. Examine the algorithm's pros, cons, and limitations, and compare its performance to other techniques. Gain insights into topics such as update groups, sharding, mutexes, and atomic integers. Follow along as the speaker presents code examples, design choices, and test strategies for implementing this locking strategy in your own projects.

A Multithreaded, Transaction-Based Locking Strategy for Containers

CppNow
Add to list