proxygen
|
#include <EventBase.h>
Public Member Functions | |
virtual | ~LoopCallback ()=default |
virtual void | runLoopCallback () noexcept=0 |
void | cancelLoopCallback () |
bool | isLoopCallbackScheduled () const |
Private Types | |
typedef boost::intrusive::list< LoopCallback, boost::intrusive::constant_time_size< false > > | List |
Private Attributes | |
std::shared_ptr< RequestContext > | context_ |
Friends | |
class | EventBase |
class | VirtualEventBase |
A callback interface to use with runInLoop()
Derive from this class if you need to delay some code execution until the next iteration of the event loop. This allows you to schedule code to be invoked from the top-level of the loop, after your immediate callers have returned.
If a LoopCallback object is destroyed while it is scheduled to be run in the next loop iteration, it will automatically be cancelled.
Definition at line 148 of file EventBase.h.
|
private |
Definition at line 167 of file EventBase.h.
|
virtualdefault |
|
inline |
Definition at line 155 of file EventBase.h.
Referenced by proxygen::HTTPSession::cancelLoopCallbacks(), wangle::OutputBufferingHandler::cleanUp(), wangle::OutputBufferingHandler::close(), folly::AsyncSocket::closeNow(), proxygen::HTTPSession::immediateShutdown(), folly::EventBase::runBeforeLoop(), folly::EventBase::runInLoop(), folly::VirtualEventBase::runOnDestruction(), folly::EventBase::runOnDestruction(), folly::AsyncSocket::setReadCB(), proxygen::HTTPSession::shutdownTransportWithReset(), folly::AsyncSocket::startFail(), TEST(), and folly::fibers::EventBaseLoopController::~EventBaseLoopController().
|
inline |
Definition at line 160 of file EventBase.h.
Referenced by proxygen::HTTPSession::cancelLoopCallbacks(), proxygen::HTTPSession::checkForShutdown(), wangle::OutputBufferingHandler::cleanUp(), wangle::OutputBufferingHandler::close(), folly::AsyncSocket::closeNow(), proxygen::HTTPSession::immediateShutdown(), proxygen::HTTPSession::notifyEgressBodyBuffered(), proxygen::HTTPSession::rescheduleLoopCallbacks(), proxygen::HTTPSession::resumeReadsImpl(), proxygen::HTTPSession::scheduleWrite(), folly::AsyncSocket::setReadCB(), proxygen::HTTPSession::shutdownTransportWithReset(), folly::AsyncSocket::startFail(), and wangle::OutputBufferingHandler::write().
|
pure virtualnoexcept |
Implemented in TerminateTestCallback, CountedLoopCallback, folly::AsyncSocket::ImmediateReadCB, proxygen::HTTPSession::ShutdownTransportCallback, proxygen::HTTPSession, proxygen::compress::QMINScheme, wangle::ConnectionManager::DrainHelper, folly::EventBase::StackFunctionLoopCallback, folly::EventBase::FunctionLoopCallback, proxygen::compress::CompressionScheme, wangle::OutputBufferingHandler, folly::fibers::EventBaseLoopController::ControllerCallback, folly::MemoryIdlerTimeout, and CountedLoopCallback.
Referenced by folly::EventBase::runLoopCallbacks(), and folly::EventBase::~EventBase().
|
friend |
Definition at line 170 of file EventBase.h.
|
friend |
Definition at line 171 of file EventBase.h.
|
private |
Definition at line 172 of file EventBase.h.
Referenced by folly::EventBase::runInLoop(), and folly::EventBase::runLoopCallbacks().