作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在编写一个需要稳定性和高性能的多线程服务器应用程序。我正在考虑将 Boost 用于我需要的一些数据结构。
侵入式数据结构对于那些应该是线程安全的并且需要快速访问、插入等的东西来说是好是坏::::?
最佳答案
侵入式数据结构本身并不比非侵入式数据结构好或坏。
最好的选择是不要在线程之间共享数据。如果线程确实需要共享数据,第二好的选择是只读数据结构,因此不需要同步。
共享数据结构是线程之间的通信路径。因此,您需要仔细考虑直接共享数据结构是否是最好的通信方式。你需要什么数据结构?消息队列就足够了吗?您需要并发访问相同的数据,还是不同的线程访问数据结构的不同部分?
与一般多线程使用的替代方案相比,侵入式数据结构没有任何优势或劣势。
关于c++ - 侵入式或非侵入式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3819816/
我是一名优秀的程序员,十分优秀!