master
Harald Wolff 2019-04-05 00:59:05 +02:00
parent e258540edb
commit 5b75d71847
2 changed files with 2582 additions and 3 deletions

View File

@ -88,15 +88,17 @@ namespace ln.snmp.endpoint
lock (queuedRequests) lock (queuedRequests)
{ {
queuedRequests.Add(requestMessage.MessageID, requestMessage); queuedRequests.Add(requestMessage.MessageID, requestMessage);
Monitor.Exit(queuedRequests);
lock (requestMessage) lock (requestMessage)
{ {
Send(requestMessage); Send(requestMessage);
Monitor.Exit(queuedRequests);
Monitor.Wait(requestMessage, SNMPEngine.Timeout); Monitor.Wait(requestMessage, SNMPEngine.Timeout);
Monitor.Enter(queuedRequests);
} }
Monitor.Enter(queuedRequests);
SnmpMessage responseMessage = queuedRequests[requestMessage.MessageID]; SnmpMessage responseMessage = queuedRequests[requestMessage.MessageID];
if (responseMessage == requestMessage) if (responseMessage == requestMessage)
throw new TimeoutException(); throw new TimeoutException();

File diff suppressed because it is too large Load Diff