#include "test.h"
|
using namespace std;
|
|
|
int key = 1;
|
bool stop = false;
|
void sigint_handler(int sig) {
|
|
stop = true;
|
|
}
|
|
int main(int argc, char *argv[])
|
{
|
|
int qsize = 16;
|
|
signal(SIGINT, sigint_handler);
|
|
mm_init(512);
|
|
// SHMQueue<struct Item, 3> *queue = new SHMQueue<struct Item, 3>(qsize);
|
SHMQueue<item_t> *queue = new SHMQueue<item_t>(key, qsize);
|
|
//LockFreeQueue<struct Item> *queue = QueueFactory::createQueue<struct Item> (key, qsize);
|
/* Transfer blocks of data from shared memory to stdout */
|
|
struct timespec timeout = {5, 0};
|
item_t item;
|
while(!stop && queue->pop_timeout(item, &timeout)) {
|
//cout << "出队:" << item << endl;
|
LoggerFactory::getLogger().error("%d", item);
|
//err_msg(0, "%d", item);
|
//cout << item.pic << endl;
|
//sleep(1);
|
}
|
|
//delete queue;
|
//mm_destroy();
|
err_msg(0, "consumer quit");
|
exit(EXIT_SUCCESS);
|
}
|