我有一个用go编写的网络应用程序.业务逻辑并不重要.
问题是我正在努力利用我的机器的完整功能,
当我分析应用程序时,大部分时间花在运行时的东西上.似乎很多时间花在runtime.systemstack
我不明白它意味着什么或如何提高性能上.
我添加了相关慢执行方法的分析.
svg文件
根据我的理解:当通道满时,GO中的缓冲通道不是FIFO.
我在我的应用程序中需要这种行为(FIFO行为).
我怎样才能实现这种行为?那有什么开源吗?
提前致谢
编辑:
有些人不喜欢这个问题,所以让我更清楚一点:
我的意思是当缓冲频道已满并且多个发送者
在尝试向频道添加项目时被阻止时,他们将被释放的顺序
不是FIFO.您还可以阅读以下讨论:https://github.com/golang/go/issues/11506
所以,是的,我正在寻找实现这种行为的第三方库.
对不起,不清楚.