if recv_buffer_ is accessible from market_message_pump::on_receive why do you add this ti boost::bind?