| | |
| | | if( sockt->queue != NULL) |
| | | goto LABEL_PUSH; |
| | | |
| | | if(hashtable_get_queue_count(hashtable) > QUEUE_COUNT_LIMIT) { |
| | | return EBUS_EXCEED_LIMIT; |
| | | } |
| | | // if(hashtable_get_queue_count(hashtable) > QUEUE_COUNT_LIMIT) { |
| | | // return EBUS_EXCEED_LIMIT; |
| | | // } |
| | | |
| | | { |
| | | if ((rv = pthread_mutex_lock(&(sockt->mutex))) != 0) |
| | |
| | | if( sockt->queue != NULL) |
| | | goto LABEL_POP; |
| | | |
| | | if(hashtable_get_queue_count(hashtable) > QUEUE_COUNT_LIMIT) { |
| | | return EBUS_EXCEED_LIMIT; |
| | | } |
| | | // if(hashtable_get_queue_count(hashtable) > QUEUE_COUNT_LIMIT) { |
| | | // return EBUS_EXCEED_LIMIT; |
| | | // } |
| | | |
| | | { |
| | | if ((rv = pthread_mutex_lock(&(sockt->mutex))) != 0) |
| | |
| | | |
| | | LABEL_POP: |
| | | |
| | | // 检查key标记的状态 |
| | | // auto shmQueueMapIter = shmQueueStMap->find(sockt->key); |
| | | // if(shmQueueMapIter != shmQueueStMap->end()) { |
| | | // stRecord = shmQueueMapIter->second; |
| | | // if(stRecord.status = SHM_QUEUE_ST_CLOSED) { |
| | | // // key对应的状态是关闭的 |
| | | // goto ERR_CLOSED; |
| | | // } |
| | | // } |
| | | |
| | | rv = sockt->queue->pop(recvpak, timeout, flag); |
| | | if(rv != 0) { |