我创建了一个类:(非代码,示例)
class Test
{
private:
std::deque<std::vector<int>> A;
public:
void insert(std::vector<int> x);
}
Test::Test()
{}
void Test::insert(std::vector<int> x)
{
A.push_back(x);
if (A.size()>100)
A.pop_front();
}
打包成一个静态库;
然后开一个线程调用这个类:
void f(Test& t)
{
while(True)
{
std::vector<int> a(100);
t.insert(a);
}
}
int main()
{
Test t;
std::thread th1(&f, std::ref(t));
return 0;
}
运行中第二次push_back时会报内存访问异常。目前不知道原因。