多线程操作链表问题
有两个线程操作同一个链表
list<int> list;
线程1
list<int>::iterator it = list.begin();
加锁
for(; it != list.end; it++)
{
printf("%d", *it);
}
解锁
线程2
list<int>::iterator it = list.begin();
加锁
for(; it != list.end; it++)
{
if((*it) == 1)
{
list.erase(it);
break;
}
}
解锁
有什么问题么?这么写..谢谢