filmov
tv
CppCon 2017: Dave Watson “C++ Exceptions and Stack Unwinding”
![preview_player](https://i.ytimg.com/vi/_Ivd3qzgT7U/maxresdefault.jpg)
Показать описание
—
—
Exceptions are often described as 'slow', and the standard advice is to use them only in exceptional circumstances. In this talk, we'll find out how slow exceptions really are by exploring the Itanium exception handling model.
We'll dive into several implementations (libunwind, gcc, llvm-libunwind), and learn about everything that happens between throw() and catch(). We will discover the answers to questions such as why throwing an exception takes a global lock (and how to avoid it), how caching can speed up the performance of exceptions, and how to get better stack traces.
—
Dave Watson: Facebook, Engineer
Dave Watson is an infrastructure engineer at Facebook. He has been focused on improving the application server stack, including improvements in RPC, load balancing, memory management, and asynchronous programming. He has contributed to many of Facebook's core services and OSS projects, including HHVM, folly, proxygen, wangle, and mcrouter. Previously he worked at F5 networks on load balancers and network monitoring tools.
—
*-----*
*-----*
—
Exceptions are often described as 'slow', and the standard advice is to use them only in exceptional circumstances. In this talk, we'll find out how slow exceptions really are by exploring the Itanium exception handling model.
We'll dive into several implementations (libunwind, gcc, llvm-libunwind), and learn about everything that happens between throw() and catch(). We will discover the answers to questions such as why throwing an exception takes a global lock (and how to avoid it), how caching can speed up the performance of exceptions, and how to get better stack traces.
—
Dave Watson: Facebook, Engineer
Dave Watson is an infrastructure engineer at Facebook. He has been focused on improving the application server stack, including improvements in RPC, load balancing, memory management, and asynchronous programming. He has contributed to many of Facebook's core services and OSS projects, including HHVM, folly, proxygen, wangle, and mcrouter. Previously he worked at F5 networks on load balancers and network monitoring tools.
—
*-----*
*-----*
CppCon 2017: Dave Watson “C++ Exceptions and Stack Unwinding”
CppCon 2017: Pablo Halpern “Allocators: The Good Parts”
CppCon 2017: Ingve Vormestrand “Tools and Techniques To Stay Up-to-date With Modern C++”
CppCon 2017: Patrice Roy “Which Machine Am I Coding To?”
CppCon 2017: Jody Hagins “Throwing Exceptions for Fun and Profit”
Simple Solutions for High Performance: StaticFlatMap - Daniel D. Duvilanski [ CppCon 2017 ]
The amazing disappearing, reappearing trigraphs... - Paul 'TBBle' Hampson [ CppCon 2017 ]
CppCon 2017: Billy Baker “Almost Unlimited Modern C++ in Kernel-Mode Applications”
CppCon 2016: David Watson “Experiences with Facebook's C++ library'
CppCon 2017: Victor Ciura “10 Things Junior C++ Devs Don't Get”
CppCon 2016: Erik Smith “A modern database interface for C++'
CppCon 2017: Dietmar Kühl “The End of std::endl”
A C++ review Community - Jens Weller [ CppCon 2017 ]
CppCon 2017: Stephen Spann “Cross-Platform Apps with Dropbox’s Djinni...”
CppCon 2017: Sven Over “folly::Function: A Non-copyable Alternative to std::function”
CppCon 2017: Matthew Avery “X-Macro: How to avoid repetition”
CppCon 2017: John D. Woolverton “C Pointers”
CppCon 2017: Ben Deane “std:: exchange Idioms”
CppCon 2017: Paul Blinzer “Heterogeneous System Architecture - Why Should You Care?”
CppCon 2017: Yu Qi “Compile-time reflection, Serialization and ORM”
A Composable Command Line Parser - Phil Nash [ CppCon 2017 ]
CppCon 2017: Piotr Padlewski “Undefined Behaviour is awesome!”
CppCon 2017: Charles Bay “The Quiet Little Gem in Modern C++: <system_error>”
CppCon 2017: Marshall Clow “Customizing the Standard Containers”
Комментарии