6

Implementing Hazard Pointers in Rust (part 2)

 3 years ago
source link: https://www.youtube.com/watch?v=_LK7qvBWNYo
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client
0:00 / 5:28:29
LOS ANGELES

Implementing Hazard Pointers in Rust (part 2)

3,612 views
Jul 10, 2021

We continue our journey implementing Hazard Pointers (https://erdani.org/publications/cuj-2...) in Rust. We follow along with the C++ implementation in Facebook's Folly library (https://github.com/facebook/folly/blo...), starting from where we left off last time: https://github.com/jonhoo/haphazard/t...

0:00:00 Introduction 0:01:50 Where we left off 0:05:50 PRs fixing problems from part 1 0:10:35 Update on issues we filed 0:20:37 Bugs I found 0:35:12 Can deleter alias be const? 0:38:35 impl Drop vs drop in vtable 0:40:25 Some Rust Q&A 0:43:20 Splitting up into modules 0:56:56 Support for custom domains 2:19:30 Improving static domain safety 2:58:04 Intermission 3:02:02 Aligning with Folly's HazPtrDomain 4:39:03 Aligning with Folly's HazPtrHolder 5:18:32 Aligning with Folly's HazPtrObject

5:25:10 Where we are and where next?

You can find the latest code for the implementation at https://github.com/jonhoo/haphazard.

Live version with chat: https://youtu.be/Hy8VfC2FwBM

Show lessShow more

18 Comments

Sort by
default-user=s48-c-k-c0x00ffffff-no-rj
Add a public comment...
Hey, can you give me a link to your vim config file? Can you upload it on GitHub and send me the link? Please.

1 week ago

On cutting out big chunks in vim, I always use shift-v then movements to visually select the chunk then d. I really should get used to relative movement for small chunks though.

1 week ago

On reclaim domain lifetimes, would adding a reclaim lifetime to the domain work? The counter example would fail as you couldn't give 'a to the domain, from what I could tell.

1 week ago

On the commit messages, the general advice (from people who would know) is to consider 50 a soft limit (when you start getting a wagging finger from UIs) and 72 the harder limit (when you start getting truncated in github UI and breaking git log layout)

In general there doesn't seem to be any justification for word wrapping the body other than the lack of word wrapping (as opposed to character wrapping) in terminals, so 72 is a general formatting guideline there that leaves space for quoting in emails, but don't get weird and wrap stack traces or whatever.

Read more 1 week ago

On domain default, how do you feel about impl Default for &'static HazPtrDomain ?

And it sounds like Rustdoc should expand everything explicitly documented.

1 week ago


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK