Skip to content

Instantly share code, notes, and snippets.

@SQReder
Created June 30, 2015 17:24
Show Gist options
  • Save SQReder/e86a3092ae6e5c457581 to your computer and use it in GitHub Desktop.
Save SQReder/e86a3092ae6e5c457581 to your computer and use it in GitHub Desktop.
Action queue
interface IAction: IDisposable {
void Execute();
}
// Создать класс ActionQueue, реализующий асинхронную очередь исполнения.
interface IActionQueue: IDisposable {
// Добавляет объект в очередь исполнения
// Экземпляр поставленный в очередь переходит в его владение IActionQueue.
// Каждый объект IAction должен быть освобожден сразу после исполнения
void Enqueue(IAction action);
// Останавливает исполнение
// Если установлен флаг StopGracefuly то текущее ожидается завершение исполнения текущего действия
void Stop(bool StopGraceful);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment