큐가 256개 제한되 있고, 큐에 사용대기 데이터가 없으면

PostMessage로 다음에 다시 검사해서 보내려는데,

PostMessage하려면 동적할당을 해야 하는데, 그 때 메모리 복사되는게 1024 x 16임....

너무 큰게 복사가 되는거 같은데;;;

void Module::ProcTRQuery(const TRRequest& trRequest, void* pCustomData)
{
        _TRData* pTRData = m_waitTRQueue.back();
        m_waitTRQueue.pop();
        pTRData->pData = pCustomData;
        m_runningTRList.push_back(pTRData);
}

void Module::TRQuery(const TRRequest& trRequest, void* pCustomData)
{
        if (false == m_waitTRQueue.empty())
        {
                ProcTRQuery(trRequest, pCustomData);
        }
        else
        {
                TRRequest* pTRRequest = new TRRequest(trRequest);
                PostMessage(WMU_POST_TRQUERY, (WPARAM)pTRRequest, (LPARAM)pCustomData);
        }
}

afx_msg LRESULT Module::OnPostTRQuery(WPARAM wParam, LPARAM lParam)
{
        if (true == m_waitTRQueue.empty())
        {
                PostMessage(WMU_POST_TRQUERY, wParam, lParam);
                return 0;
        }

        TRRequest* pTRRequest = reinterpret_cast<TRRequest*>(wParam);
        void* pCustomData = reinterpret_cast<void*>(lParam);

        ProcTRQuery(*pTRRequest, pCustomData);
        delete pTRRequest;

        return 0;
}