首页 > 解决方案 > NET-SNMP 中的异步调用并不是真正的异步

问题描述

我被困在错误 https://sourceforge.net/p/net-snmp/bugs/2310/

我使用 snmp_sess_async_send() 进行异步调用,但这些调用挂在同步调用 snmp_sess_synch_response() 上,使总循环(> 900 个对象)太慢。堆栈几乎一直是这样的:

#0 in __select_nocancel () from /lib64/libc.so.6  
#1 in snmp_sess_synch_response () from /lib64/libnetsnmp.so.31  
#2 in usm_discover_engineid () from /lib64/libnetsnmp.so.31  
#3 in snmpv3_engineID_probe () from /lib64/libnetsnmp.so.31  
#4 in snmp_sess_async_send () from /lib64/libnetsnmp.so.31  

这是 RHEL 7.8,NET-SNMP 版本 5.7.2。

有没有办法解决这个问题?

标签: net-snmpsendasynchronousrequest

解决方案


推荐阅读