hmbdc
simplify-high-performance-messaging-programming
|
impl class, More...
#include <RecvTransportEngine.hpp>
Public Member Functions | |
void | invokedCb (uint16_t threadSerialNumber) __restrict__ override |
void | handleMessageCb (Subscribe const &t) |
void | handleMessageCb (Unsubscribe const &t) |
void | stoppedCb (std::exception const &e) override |
char const * | hmbdcName () const |
std::tuple< char const *, int > | schedSpec () const |
![]() | |
Client () | |
trivial constructor | |
void | messageDispatchingStartedCb (uint16_t threadSerialNumber) override |
called before any messages got dispatched - only once More... | |
void | stoppedCb (std::exception const &e) override |
callback called when this Client is taken out of message dispatching More... | |
bool | droppedCb () override |
callback called after the Client is safely taken out of the Context More... | |
void | invokedCb (uint16_t threadSerialNumber) override |
this callback is called all the time (frequently) More... | |
char const * | hmbdcName () const |
return the name of thread that runs this client, override if necessary More... | |
std::tuple< char const *, int > | schedSpec () const |
an overrideable method. returns the schedule policy and priority, override if necessary priority is only used when policy is "SCHED_RR", or "SCHED_FIFO" More... | |
size_t | maxBatchMessageCount () const |
an overridable method. client receives events in batches and the max batch size is controllable when running in direct mode Context. Here is to specify the max size. More... | |
void | handleRangeImpl (BufIt &it, BufIt const &end, uint16_t threadSerialNumber) override |
internal use, don't change or override | |
![]() | |
void | handleMessage (MessageHead &w) |
![]() | |
PoolConsumer (bool interestedInMessages=true) | |
void | stopped (std::exception const &) noexcept |
bool | dropped () noexcept |
void | messageDispatchingStarted (uint16_t threadId) |
void | invoked (uint16_t threadId) |
![]() | |
void | handleMessage (MessageHead &w) |
Friends | |
class | NetContext |
Additional Inherited Members | |
![]() | |
using | ptr = std::shared_ptr< RecvTransport > |
![]() | |
enum | |
![]() | |
static void | tryDispatch (RecvTransportEngineImpl< OutBuffer, MsgArbitrator > *p, MessageHead &w) |
![]() | |
static void | tryDispatch (RecvTransportEngineImpl< OutBuffer, MsgArbitrator > *p, MessageHead &w) |
![]() | |
using | BufIt = lf_misc::iterator< HMBDC_SEQ_TYPE > |
impl class,
this needs to be created using NetContext and start in an app::Context
OutputBuffer | type of buffer to hold resulting network messages |
MsgArbitrator | arbitrator to decide drop or keep messages, suited to arbitrate between different recv transports. By default, keeping all |