mirror of
https://github.com/Radarr/Radarr.git
synced 2024-11-04 10:02:40 +01:00
Fixed: NzbDrone using 100% CPU on Linux.
This commit is contained in:
parent
4f85865b4a
commit
23c6cf2210
@ -277,7 +277,7 @@ protected virtual void Dispose(bool disposing)
|
||||
// if the client is very slow then this invoke call might not end quickly and this will make the CPU
|
||||
// hot waiting for the task to return.
|
||||
|
||||
var spinWait = new SpinWait();
|
||||
int disposeRetryCount = 0;
|
||||
|
||||
while (true)
|
||||
{
|
||||
@ -287,7 +287,7 @@ protected virtual void Dispose(bool disposing)
|
||||
SubscriptionState.Idle);
|
||||
|
||||
// If we're not working then stop
|
||||
if (state != SubscriptionState.InvokingCallback)
|
||||
if (state != SubscriptionState.InvokingCallback || disposeRetryCount ++ > 10)
|
||||
{
|
||||
if (state != SubscriptionState.Disposed)
|
||||
{
|
||||
@ -305,7 +305,7 @@ protected virtual void Dispose(bool disposing)
|
||||
break;
|
||||
}
|
||||
|
||||
spinWait.SpinOnce();
|
||||
Thread.Sleep(500);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user