| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- #include "CMDReadThread.h"
- #include <QTime>
- #include <QDebug>
- #include "TaskMNG.h"
- #include "DataManager.h"
- #ifdef Q_OS_WIN
- #pragma execution_character_set("utf-8")
- #endif
- struct _tag_NetPacket
- {
- OCCCOMMAND commandbuf;
- int DestID;
- };
- struct MainProc_In
- {
- DWORD Len;
- void *MainCallBack;
- };
- CMDReadThread::CMDReadThread() : m_isCanRun(false)
- {
- m_pNetQueue = new HDDSCMDQueue();
- m_pNetQueue->init();
- m_pNetQueue->setSafeCount(5000);
- m_pNetQueue->SetQueName("IO接收队列");
- int nSize = m_pNetQueue->size();
- nSize = 0;
- }
- void CMDReadThread::stopImmediately()
- {
- m_isCanRun = true;
- qDebug("队列状态线程关闭");
- }
- bool CMDReadThread::NetQuequePOP()
- {
- if (m_isCanRun)
- {
- return false;
- }
- HDDSCMD command;
- if (!m_pNetQueue->pop(command))
- {
- return false;
- }
- qDebug("POP: [%d]to[%d]-[%d] \n", command.nCMDtype, command.flags, command.nDateLen);
- OCCCOMMAND pCMDData;
- memcpy(&pCMDData,&command.cData,sizeof(OCCCOMMAND));
-
- pCMDData.DesNetID = 0;
- pCMDData.TrainningID = DataManager::instance().pRunThread->m_nTrainID;;
- pCMDData.DesSysType = OCC_SYS_DD_SVR;
- TaskMNG::instance()->NetComand_Receive(pCMDData);
- //emit signal_NetCommandServer(pCMDData.cmdType, pCMDData);
- return true;
- }
- void CMDReadThread::run()
- {
- while (!m_isCanRun)
- {
- if (!NetQuequePOP())
- {
- QThread::msleep(100);
- }
- }
- }
- /*
- void CMDReadThread::setNetQueue(HDDSCMDQueue* pNetQueue)
- {
- m_pNetQueue = pNetQueue;
- }
- */
|