forked from boostorg/beast
Add handler tracking locations to http operations
This commit is contained in:
1 parent
5641d9498b
commit
11385141ea
3 files changed
+62
-5
No files matched your search
@@ -60,6 +60,10 @@ class write_some_op
|
||||
error_code& ec,
|
||||
ConstBufferSequence const& buffers)
|
||||
{
|
||||
BOOST_ASIO_HANDLER_LOCATION((
|
||||
__FILE__, __LINE__,
|
||||
"http::async_write_some"));
|
||||
|
||||
invoked = true;
|
||||
ec = {};
|
||||
op_.s_.async_write_some(
|
||||
@@ -93,6 +97,11 @@ public:
|
||||
if(ec)
|
||||
{
|
||||
BOOST_ASSERT(! f.invoked);
|
||||
|
||||
BOOST_ASIO_HANDLER_LOCATION((
|
||||
__FILE__, __LINE__,
|
||||
"http::async_write_some"));
|
||||
|
||||
return net::post(
|
||||
s_.get_executor(),
|
||||
beast::bind_front_handler(
|
||||
@@ -107,6 +116,10 @@ public:
|
||||
BOOST_ASSERT(sr_.is_done());
|
||||
}
|
||||
|
||||
BOOST_ASIO_HANDLER_LOCATION((
|
||||
__FILE__, __LINE__,
|
||||
"http::async_write_some"));
|
||||
|
||||
return net::post(
|
||||
s_.get_executor(),
|
||||
beast::bind_front_handler(
|
||||
@@ -191,16 +204,28 @@ public:
|
||||
if(Predicate{}(sr_))
|
||||
{
|
||||
BOOST_ASIO_CORO_YIELD
|
||||
net::post(
|
||||
s_.get_executor(),
|
||||
std::move(*this));
|
||||
{
|
||||
BOOST_ASIO_HANDLER_LOCATION((
|
||||
__FILE__, __LINE__,
|
||||
"http::async_write"));
|
||||
|
||||
net::post(
|
||||
s_.get_executor(),
|
||||
std::move(*this));
|
||||
}
|
||||
goto upcall;
|
||||
}
|
||||
for(;;)
|
||||
{
|
||||
BOOST_ASIO_CORO_YIELD
|
||||
beast::http::async_write_some(
|
||||
s_, sr_, std::move(*this));
|
||||
{
|
||||
BOOST_ASIO_HANDLER_LOCATION((
|
||||
__FILE__, __LINE__,
|
||||
"http::async_write"));
|
||||
|
||||
beast::http::async_write_some(
|
||||
s_, sr_, std::move(*this));
|
||||
}
|
||||
bytes_transferred_ += bytes_transferred;
|
||||
if(ec)
|
||||
goto upcall;
|
||||
@@ -248,6 +273,10 @@ public:
|
||||
void
|
||||
operator()()
|
||||
{
|
||||
BOOST_ASIO_HANDLER_LOCATION((
|
||||
__FILE__, __LINE__,
|
||||
"http::async_write(msg)"));
|
||||
|
||||
async_write(s_, sr_, std::move(*this));
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user