Here's a simplified version of my call and handler:
unsigned char tmpBuffer[512]; //global
void MyClass::handler(const boost::system::error_code& error, size_t
bytes_transferred)
{
boost::system::error_code e;
std::cerr << "handler called()" << "\n";
}
void MyClass::test()
{
...
socketPtr->async_read_some(boost::asio::buffer(tmpBuffer, 512),
boost::bind(&MyClass::handler, this,
boost::asio::placeholders::error,
boost::asio::placeholders::bytes_transferred));
}
Can anyone give me any idea as to how I can get my handler to be called?
Could you please provide some code-excerpt that should compile and work? I.e. code that contains socket initialization, io_service run and your object creation - because the mistake is probably somewhere at those points.
Invocation of the handler will be performed in a
manner equivalent to using boost::asio::io_service::post()." I'm not
sure exactly what this means...what is this equivalent manner that is
mentioned?
It means that the handler would be invoked in one of the threads that run the io_service object used by the socked.