为什么用多线程getnameinfo这么慢?

Why getnameinfo with multi-thread so slow?

我想通过在 Linux 中调用 getnameinfo() 来解析主机名。为了加快这个过程,我使用线程池来解析主机名。
但问题是,开始速度很快,然后逐渐下降。一段时间后,在一个线程中速度接近了。有时这个函数需要 3 秒,所有线程看起来都在按顺序运行。
我对此感到困惑。 getnameinfo()函数中有没有锁机制?

"threads running by order" 强烈建议这是您的锁定或请求调度导致的。如果你认为这是一个锁,闯入调试器应该很容易让你在锁定时捕获调用堆栈。