gpt4 book ai didi

java - 同步有多贵?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:04:05 26 4
gpt4 key购买 nike

我正在使用 java.nio api 编写网络应用程序。我的计划是在一个线程上执行 I/O,并在另一个线程上处理事件。不过,要做到这一点,我需要同步读/写,这样就永远不会满足竞争条件。

请记住,我需要同时处理数千个连接,同步值得吗,还是我应该使用单个线程进行 I/O 和事件处理?

最佳答案

你在做什么类型的事件处理?可能的瓶颈在哪里?你有瓶颈吗?

从最简单的实现开始,一旦您了解了瓶颈,就进行优化。

如果你发现你的网络 IO 线程读取速度不够快,因为它花费了太多时间处理事件,那么创建一个缓冲队列,与之同步,并让一个事件处理线程在队列中工作。

您可能想对队列的大小设置一个限制,这样您就不会最终耗尽内存。如果网络线程即将填满队列,让它等待直到有更多空间。

过早的优化对任何人来说都不好玩。

但是,要回答您的问题,两个线程之间的同步不太可能成为瓶颈,您不必担心它的开销。

关于java - 同步有多贵?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2647039/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com