void DataSocket::sendPacket(PACKET_PTR& packet) { mEventLoop->pushAsyncProc([this, packet](){ mSendList.push_back({ packet, packet->size()}); runAfterFlush(); }); }
void DataSocket::sendPacket(const PACKET_PTR& packet, const PACKED_SENDED_CALLBACK& callback) { mEventLoop->pushAsyncProc([this, packet, callback](){ mSendList.push_back({ packet, packet->size(), callback }); runAfterFlush(); }); }
void DataSocket::sendInLoop(const PACKET_PTR& packet, const PACKED_SENDED_CALLBACK& callback) { assert(mEventLoop->isInLoopThread()); if (mEventLoop->isInLoopThread()) { auto len = packet->size(); mSendList.push_back({ packet, len, callback }); runAfterFlush(); } }
void DataSocket::sendPacketInLoop(const PACKET_PTR& packet) { assert(mEventLoop->isInLoopThread()); mSendList.push_back({ packet, packet->size() }); runAfterFlush(); }