Главная
Study mode:
on
1
Intro
2
Outline
3
Motivation - The Ping-Pong Pattern
4
Challenges
5
Running Example: Remarks
6
Approach 1 - The Qt Way: Qobjects
7
Approach 2 - Nested Lambdas
8
Other Approaches
9
Coroutines - High-Level Overview
10
Coroutines - Supported Operations
11
Coroutines - Pseudo-Code
12
Coroutines in C++
13
C++ Coroutines - Notable Objects
14
C++ Coroutines - New Coroutine Operator
15
C++ Coroutines - Practical Example
16
C++ Coroutines - Awaitable Interface
17
C++ Coroutines - co_await on Awaitables
18
Design Principles
19
Proposed Solution - 4 Incremental Steps
20
Self-Dispatching Coroutines - Custom Await
21
Self-Dispatching Coroutines - Running Exa
22
Self-Dispatching Coroutines - Recap
23
Automate Lifetime Checks - Problem State
24
Automate Lifetime Checks - Example of Desir
25
Automate Lifetime Checks - Guard clas
26
Automate Lifetime Checks - Checked Await
27
Automate Lifetime Checks - Running Exar
28
2. Automate Lifetime Checks - Recap
29
Guarding Thread-Unsafe Pointers - Fronten
30
Guarding Thread-Unsafe Pointers - Improved
31
Guarding Thread-Unsafe Pointers - Swapp
32
Guarding Thread-Unsafe Pointers - Rec
33
Guarding Thread-Unsafe Pointers - Backen
34
Guarding Thread-Unsafe Pointers - Running
35
Guarding Thread-Unsafe Pointers - Expirit
36
Guarding Thread-Unsafe Pointers - ToThrea
37
Final Reworked Example
38
Final Design - Remarks
39
Hidden Costs
Description:
Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only! Grab it Explore coroutines in Qt for safer thread pool interactions in this 52-minute conference talk. Learn how to solve common problems in asynchronous applications by offloading tasks to worker threads. Discover techniques to improve code readability, prevent race conditions, and handle object lifetimes effectively. Gain insights into using C++ 20 coroutines to write sequential syntax for asynchronous code, automatically migrate execution between threads, guard against race conditions, and ensure result storage validity. Follow along with a real-world Qt-based example and learn design principles for implementing coroutines in GUI applications. Understand the challenges of the ping-pong pattern and compare different approaches, including Qt's QObjects and nested lambdas. Dive into coroutine concepts, operations, and practical implementations in C++. Explore incremental steps to create a robust solution for thread pool interactions, including self-dispatching coroutines, automated lifetime checks, and guarding thread-unsafe pointers. Read more

Coroutines are Qt - Safer Thread Pools Interactions

NDC Conferences
Add to list