Sign in to confirm you’re not a bot
This helps protect our community. Learn more
These chapters are auto-generated

Intro

0:00

Dynamic Link Libraries

0:29

Dynamic Linking vs Dynamic Loading

0:45

MacOS Bundles

2:23

Dynamic Loading Libraries

4:07

Dynamic Loading APIs

6:00

Function Pointer Declaration

7:21

Win32 API Example

8:35

OBG Dump

9:24

How to use it

9:41

Reference Count

9:57

Use Cases

11:40

Dependent Libraries

11:56

Explanation of Dependent Libraries

12:11

Explanation of Dynamic Linking

13:20

Dynamic Linking with Delay Loading

14:21

Crossplatform Delay Loading

14:53

Surprise of Daily Loading

16:44

Dynamic Loading API

18:45

Short Answer

19:07

A Pointer

19:38

Dynamic Entities

20:06

Function Interface

20:38

Dynamic Loading

22:35

Declaration

23:00

Two Loadable Libraries

23:37

API Compatible

24:16

Example

24:48

Plugin System

27:24

WheresPython

27:32

Plugin

30:51

Open Plugins

32:26

Map Function

32:43

Demo

32:57

Questions

33:30

Unloading

36:51

Object Model

38:51

Threat Local Storage

40:33

Memory Locker

42:09

Question

47:18

Application Verifier

48:49

Application Verifier UI

49:25

Summary

50:39
Dynamically Loaded Libraries Outside the Standard - Zhihao Yuan - CppCon 2021
139Likes
7,042Views
2022Mar 28
https://cppcon.org/ https://github.com/CppCon/CppCon2021 --- You must be aware of dynamically-link libraries, but have you tried using them through LoadLibrary on Windows or dlopen on UNIX? A library may be dynamically-linked, but not designed for being loaded at runtime. Likewise, we may load a library at runtime, but we may not need to unload it before the program exits. In other words, a library can be "dynamic" at different levels. Those dynamically loaded and dynamically unloaded are often more special than the ones that do not. However, the dark side is that the more dynamic a library is, the further they are apart from the C++ standard. This talk will cover a few typical use cases of dynamically loaded libraries, such as delay loading, plugin system, live update. We will discuss their status quo on different platforms, tools for diagnosis, common practices, problems, and what standardization can do to them. These should inspire you about what to do when designing your next architecture that may involve dynamically loaded code. --- Zhihao Yuan Zhihao Yuan is an R&D Software Engineer at Symantec, a division of Broadcom. He participated in standardizing designated initializers and improved narrowing conversions in C++20 but ends up almost exclusively programmed in Python last year and only recently picked up C++14 again. He finished watching the first Macross, a 1982 animation, early this year. --- Videos Streamed & Edited by Digital Medium: http://online.digital-medium.co.uk Register Now For CppCon 2022: https://cppcon.org/registration/

Follow along using the transcript.

CppCon

165K subscribers