This event has ended. View the official site or create your own event → Check it out
This event has ended. Create your own
View analytic
Tuesday, September 20 • 3:45pm - 4:15pm
Out of Memory? Business as usual: Examining applications that do not terminate on std::bad_alloc

Log in to save this to your schedule and see who's attending!

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.

avatar for Sergey Zubkov

Sergey Zubkov

Morgan Stanley
Sergey is a former biochemistry researcher and OS developer, who now works in finance and spends his free time editing cppreference.com

Tuesday September 20, 2016 3:45pm - 4:15pm
Kantner (Room 403) Meydenbauer Center

Attendees (118)