我正在编写一个多线程服务器应用程序,需要稳定性和高性能。我正在考虑将Boost用于一些我需要的数据结构。
对于应该是线程安全的、需要快速访问、插入等的东西,侵入式数据结构是更好还是更差?
发布于 2010-09-29 16:50:32
介入式数据结构本身并不比非介入式数据结构更好或更差。
最好的选择是不要在线程之间共享数据。如果线程确实需要共享数据,次佳选择是只读数据结构,因此不需要同步。
共享数据结构是线程之间的通信路径。因此,您需要仔细考虑拥有一个直接共享的数据结构是否是最好的通信方式。你对数据结构有什么要求?消息队列就足够了吗?您是否需要并发访问相同的数据,或者不同的线程是否访问数据结构的不同部分?
一般来说,介入式数据结构并不比多线程使用的替代方案更好或更差。
https://stackoverflow.com/questions/3819816
复制相似问题