Hi Gavin:
 
>Having said this, using lambdas can get tricky in real-world code, as 
>it's common to want to start the same read operation when the first 
>completes, and so on.
 
Just like you said, will the code build a lambda expression when async_read() invoked ?
So that "[=](const error_code& ec, size_t count"  will be built servial times, it is kind of lavish for contructing the lambda expression, isn't ?
It's better that build a function object in static. What do you think ?
 
Cheers~
 

Cheer~
 
程墨
PBI—北京加维通讯电子技术有限公司
地址:北京市海淀区西北旺镇 丰智东路3号院
邮编:100094