全部分类
移动开发与应用
WEB前端
架构与运维
程序设计
数据库
操作系统
热点技术
综合
关于线程间共享数据互斥的思考
971阅读 0评论
2011-10-16
web_surf
分类:
C/C++
当多个线程需要访问相同的数据时,需要用锁实现互斥。
尽量不要对每个共享都创建一个锁,因为太多的锁容易出现死锁问题。可将这些共享数据放入一个struct/class中,然后对struct/class变量加锁,即增强可读性,也防止了死锁的出现。
互斥代码段要尽量短小,这样可以减少其它线程的等待时间。
在有的平台下,要防止在主线程中阻塞等待访问互斥共享变量过长(>3S),如Android,iOS。
上一篇:
[SE] Git
下一篇:
[Java] JSON