小编Dee*_*ikh的帖子

从boost lock free spsc队列获取错误输出

我正在尝试使用boost库实现用户定义数据类型的无锁队列,但是我得到了错误的结果.

请帮我解决我做错的地方.

#include <boost/lockfree/spsc_queue.hpp>
#include <thread>
#include <iostream>
#include <string.h>
#include <time.h>   


class Queue
{
 private:
       unsigned char *m_data;
       int m_len;

 public:
       Queue(unsigned char *data,int len);

       Queue(const Queue &obj);

       ~Queue();  

       Queue & operator =(const Queue &obj);


       unsigned char *getdata()
       {
         return m_data;
       }

       int getint()
       {
           return m_len;
       }
};

Queue::Queue(unsigned char* data, int len)
{
      m_len=len;

      m_data=new unsigned char[m_len];

      memcpy(m_data,data,m_len);
}

Queue::Queue(const Queue& obj)
{
      m_len=  obj.m_len;

      m_data=new unsigned char[m_len];

      memcpy(m_data,(unsigned char *)obj.m_data,m_len);
}

Queue::~Queue()
{
   delete[] m_data;
   m_len=0; …
Run Code Online (Sandbox Code Playgroud)

queue boost lock-free c++11

2
推荐指数
1
解决办法
1059
查看次数

标签 统计

boost ×1

c++11 ×1

lock-free ×1

queue ×1