filmov
tv
CppCon 2016: Sergey Zubkov “Examining applications that do not terminate on std::bad_alloc'

Показать описание
—
—
System memory holds a special place in the hierarchy of program resources; its availability is the implied precondition for many innocuous lines of code, from std::string::substr() to passing std::function<> by value. The ability to always create another object is ingrained in the OOP mindset so much that it is often said that immediate termination is the cleanest way to handle memory allocation failures in most situations. Nevertheless, C++, when consistently applying RAII, makes it possible to treat memory allocation exactly as any other resource acquisition.
To what degree do actual applications take advantage of that possibility and what responses to allocation failures are there in the wild? This presentation will examine over 300 open source projects that incorporate explicit handling for std::bad_alloc, examine the causes (it’s not always “out of memory”), response strategies (it’s more than just rollback), and related practical considerations.
—
Sergey Zubkov
Morgan Stanley
—
*-----*
*-----*
—
System memory holds a special place in the hierarchy of program resources; its availability is the implied precondition for many innocuous lines of code, from std::string::substr() to passing std::function<> by value. The ability to always create another object is ingrained in the OOP mindset so much that it is often said that immediate termination is the cleanest way to handle memory allocation failures in most situations. Nevertheless, C++, when consistently applying RAII, makes it possible to treat memory allocation exactly as any other resource acquisition.
To what degree do actual applications take advantage of that possibility and what responses to allocation failures are there in the wild? This presentation will examine over 300 open source projects that incorporate explicit handling for std::bad_alloc, examine the causes (it’s not always “out of memory”), response strategies (it’s more than just rollback), and related practical considerations.
—
Sergey Zubkov
Morgan Stanley
—
*-----*
*-----*
CppCon 2016: Sergey Zubkov “Examining applications that do not terminate on std::bad_alloc'
CppCon 2017: Sergey Zubkov “From security to performance to GPU programming...”
Optimally Shooting Furry Balls out of Vulkanoes - Alexandru Voicu [ CppCon 2016 ]
Turning Particle-Astro-Physicist-Hackers into Software Engineers - Alex Olivas [ CppCon 2016 ]
CppCon 2016: Robert Ramey “Safe Numerics Library'
CppCon 2016: Diego Rodriguez-Losada “Why not Conan?'
My Defence - Sergey Marunich, Eugenia Kislova, Alexander Zubkov, Oleg Nekrasov
What is the basic interface? (part 1 of 2) - Lisa Lippincott [ CppCon 2016 ]
CppCon 2014: Drew Paroski 'How HHVM Uses Modern C++ for Fun and Profit (Literally)'
What is the basic interface? (part 2 of 2) - Lisa Lippincott [ CppCon 2016 ]
BAD_ALLOC | Gameplay Trailer
C++ ⦁ Теорія ⦁ Урок 180 ⦁ Паралелізм ⦁ Файл future
Finding BaseDllName from Process Environment Block (PEB)
C++ : Program terminating with std::bad_alloc
C++ : How to deal with bad_alloc in C++?
Evolving a Nice Trick - Patrice Roy - CppCon 2021
CppCon 2017: Marshall Clow “Customizing the Standard Containers”
C++ : what(): std::bad_alloc - am I out of memory?
C++ ⦁ Теорія ⦁ Урок 91 ⦁ Файл cstring
The string substr method
C++ Exception Handling
Understanding C++ Type Traits
'std::bad_alloc' after mistakenly changing /usr/ permissions
Software Engineering: Should I throw std::bad_alloc?
Комментарии