queue/libshm_queue.a | 补丁 | 查看 | 原始文档 | blame | 历史 | |
queue/logger_factory.h | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
queue/mod_socket.c | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
queue/shm_socket.c | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
test/communication | 补丁 | 查看 | 原始文档 | blame | 历史 | |
test2/pub | 补丁 | 查看 | 原始文档 | blame | 历史 | |
test2/pub_sub | 补丁 | 查看 | 原始文档 | blame | 历史 | |
test2/req_rep | 补丁 | 查看 | 原始文档 | blame | 历史 | |
test2/test0.txt | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
test2/test1.txt | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
test2/test2.txt | 补丁 | 查看 | 原始文档 | blame | 历史 | |
test2/test3.txt | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
queue/libshm_queue.aBinary files differ
queue/logger_factory.h
@@ -7,7 +7,7 @@ static Logger getLogger() { //ERROR ALL static Logger logger(Logger::ALL); static Logger logger(Logger::ERROR); return logger; } }; queue/mod_socket.c
@@ -74,6 +74,7 @@ socket->recvQueue->push(entry); // shm_free(recvbuf); } free(_socket); shm_close_socket(client_socket); return NULL; @@ -84,6 +85,7 @@ shm_socket_t *client_socket; pthread_t tid; while(socket->shm_socket->status == SHM_CONN_LISTEN) { //接受客户端的连接请求 client_socket = shm_accept(socket->shm_socket); mod_socket_t *arg = (mod_socket_t *)malloc(sizeof(mod_socket_t)); @@ -152,38 +154,37 @@ int mod_recv(void * _socket, void **buf, int *size) { mod_socket_t * socket = (mod_socket_t *) _socket; mod_entry_t entry; int rv; if(socket->is_server ) { switch(socket->mod) { case REQ_REP: logger.debug("REQ_REP mod_recv before"); logger.debug("REQ_REP mod_recv before"); SemUtil::dec(socket->slots); rv = socket->recvQueue->pop(entry); socket->recvQueue->pop(entry); *buf = entry.buf; *size = entry.size; socket->client_socket = entry.client_socket; SemUtil::inc(socket->items); logger.debug("REQ_REP mod_recv after"); break; case PUB_SUB: rv = 0; break; case SURVEY: default: rv = socket->recvQueue->pop(entry); socket->recvQueue->pop(entry); *buf = entry.buf; *size = entry.size; } return rv; } return 0; } else { logger.debug("mod_recv before"); rv = shm_recv(socket->shm_socket, buf, size); shm_recv(socket->shm_socket, buf, size); logger.debug("mod_recv after"); return rv; return 0; } return -1; queue/shm_socket.c
@@ -112,10 +112,10 @@ socket->queue = new SHMQueue<shm_msg_t>(socket->port, 16); socket->acceptQueue = new LockFreeQueue<shm_msg_t, DM_Allocator>(16); socket->clientSocketMap = new std::map<int, shm_socket_t* >; socket->status = SHM_CONN_LISTEN; pthread_create(&(socket->dispatch_thread), NULL, _server_run_msg_rev , (void *)socket); socket->status = SHM_CONN_LISTEN; return 0; } test/communicationBinary files differ
test2/pubBinary files differ
test2/pub_subBinary files differ
test2/req_repBinary files differ
test2/test0.txt
File was deleted test2/test1.txt
File was deleted test2/test2.txt
test2/test3.txt
File was deleted