Пример #1
0
void SendOneMsg()
{
    if (usedSocket && summer && g_runing)
    {
        sprintf(sendBuffer, "%s", "hellow");
        sendBufferLen = (int)strlen(sendBuffer) + 1;
        usedSocket->doSend(sendBuffer, sendBufferLen, std::bind(OnSocketSend, std::placeholders::_1, std::placeholders::_2));// safe-warning: one socket can't concurrent call this method without wait callback. 
    }
}
Пример #2
0
void OnSocketRecv(NetErrorCode ec, int recvLength)
{
    if (ec != NEC_SUCCESS) return;
    memcpy(sendBuffer, recvBuffer, recvLength);
    sendBufferLen = recvLength;
    bool ret = usedSocket->doSend(sendBuffer, sendBufferLen, std::bind(OnSocketSend, std::placeholders::_1, std::placeholders::_2));// safe-warning: can't call this method again when last doSend request not return. 
    if (!ret)  return;
    ret = usedSocket->doRecv(recvBuffer, recvBufferLen, std::bind(OnSocketRecv, std::placeholders::_1, std::placeholders::_2));
    if (!ret)  return;
    sendCount++;
};
Пример #3
0
void onConnect(NetErrorCode ec)
{
    if (ec != NEC_SUCCESS)
    {
        LOGE("connect error");
        g_runing = false;
        return;
    }
    usedSocket->doRecv(recvBuffer, recvBufferLen, std::bind(OnSocketRecv, std::placeholders::_1, std::placeholders::_2));
    sprintf(sendBuffer, "%s", "hellow----------------------------------------------------------");
    sendBufferLen = (int)strlen(sendBuffer) + 1;
    usedSocket->doSend(sendBuffer, sendBufferLen, std::bind(OnSocketSend, std::placeholders::_1, std::placeholders::_2));// safe-warning: one socket can't concurrent call this method without wait callback. 

};
Пример #4
0
void OnServerSocketRecv(NetErrorCode ec, int recvLength)
{
    if (ec != NEC_SUCCESS)
    {
        return;
    }
    LOGI("recv client msg len = " << recvLength << ", msg :" << recvBuffer);
    memcpy(sendBuffer, recvBuffer, recvLength);
    sendBufferLen = recvLength;
    bool ret = usedSocket->doSend(sendBuffer, sendBufferLen, std::bind(OnSocketSend, std::placeholders::_1, std::placeholders::_2));// safe-warning: can't call this method again when last doSend request not return. 
    if (!ret)
    {
        return;
    }
    ret = usedSocket->doRecv(recvBuffer, recvBufferLen, std::bind(OnServerSocketRecv, std::placeholders::_1, std::placeholders::_2));
    if (!ret)
    {
        return;
    }
};