using System; namespace ZeroLevel.Services.Logging { /// /// Очередь сообщений для вывода в лог /// internal interface ILogMessageBuffer : IDisposable { /// /// Количество сообщений в очереди /// long Count { get; } /// /// Запись сообщения в очередь /// void Push(LogLevel level, string message); /// /// Запрос сообщения из очереди для вывода в лог, подразумевается блокирующая работа метода, /// пока очередь пустая, метод ожидает появления сообщения не возвращая результат. /// Tuple Take(); } }