将线程的日志数据转储到公共缓冲区
Posted
技术标签:
【中文标题】将线程的日志数据转储到公共缓冲区【英文标题】:Dumping threads' Log Data into Common buffer 【发布时间】:2016-02-23 05:31:28 【问题描述】:我的程序有不同的线程,将运行一个通用的日志记录线程。
我所有的线程都必须将一些日志数据转储到日志线程的缓冲区中。一旦缓冲区达到一定大小,日志记录线程将依次写入日志文件。
如何在不影响运行线程性能的情况下写入公共缓冲区。?我正在考虑一种无需太多开销的方法,而不是使用互斥锁或任何其他同步机制。
【问题讨论】:
【参考方案1】:您可能会发现使用互斥体的性能损失非常低,以至于不值得尝试创建多生产者、单消费者队列的麻烦。但是this question 询问了此类问题,并提供了一些建议。
【讨论】:
以上是关于将线程的日志数据转储到公共缓冲区的主要内容,如果未能解决你的问题,请参考以下文章