AniDBmini.AniDBAPI.PrioritizedCommand C# (CSharp) Метод

PrioritizedCommand() приватный Метод

Executes an action after a certain amount of time has passed since the previous command was sent to the server.
private PrioritizedCommand ( System.Action Command ) : void
Command System.Action
Результат void
        private void PrioritizedCommand(Action Command)
        {
            ++mainWindow.m_pendingTasks;
            ThreadPool.QueueUserWorkItem(new WaitCallback(delegate
            {
                lock (queueLock)
                {
                    double secondsSince = DateTime.Now.Subtract(m_lastCommand).TotalSeconds;
                    int timeout = CalculateTimeout();

                    if (secondsSince < timeout)
                        Thread.Sleep(TimeSpan.FromSeconds(timeout - secondsSince));

                    Command();
                    --mainWindow.m_pendingTasks;                    
                }
            }));
        }