加锁算法2——两线程交换数据
2016-04-22 16:42:19 2 举报
一种简易的生产者——消费者多线程模型,带锁,理解容易性能很好
作者其他创作
大纲/内容
容器2
用容器指针修改容器,添加新的事件
解锁
等待 加锁
一个非常简单的模型,主线程产生任务,子线程处理掉这些任务。主线程不断把任务加在当前容器里,子线程总是在处理另一个容器。可以看到,加锁和解锁之间做的事情都极其简单,锁对性能的影响降低到最小。
pContainer指针在容器1和2之间切换切换时要加锁
线程2处理任务
容器1
线程1 产生任务
逻辑处理
切换容器指针用临时指针指向另一个容器
处理临时指针指向的容器处理完毕清空容器
0 条评论
下一页