Difference between revisions of "Boostcon 2011"
From Just in Time
Line 25: | Line 25: | ||
'''this'''-pointer should outlive operation. | '''this'''-pointer should outlive operation. | ||
Newby problem: providing a buffer that goes out of scope (local variable for instance). | Newby problem: providing a buffer that goes out of scope (local variable for instance). | ||
+ | |||
+ | Use shared_ptr and shared_from_this to automatically manage object lifetime. |
Revision as of 15:56, 16 May 2011
This page will contain my notes taken during Boostcon 2011
Library in a Week
Review tools
- Code Collaborator
- Crucible (Crubicle?)
Boost.Asio
Chris Kohlhoff
fundamental concepts that went into the library. Use them in your programs.
One key criterium: should not be a framework, but a toolkit. This gives you more freedom.
- io_service
- "your channel into the operationg system"
Challenges of asynchronous programming:
- Object lifetimes
- Thinking asynchronously
- Threads
- ?
Object lifetimes
handlers and buffers are taken by value, a copy is made. Buffers are shallow.
Arguments taken by non-const reference: caller needs to guarantee lifetime. this-pointer should outlive operation. Newby problem: providing a buffer that goes out of scope (local variable for instance).
Use shared_ptr and shared_from_this to automatically manage object lifetime.