コード例 #1
0
        /// <inheritdoc />
        public void Handle(ILogEntry entry, Int32 sequenceNumber)
        {
            lock (m_lock)
            {
                while (m_logEntries.Count >= LOG_BUFFER_MAX_SIZE)
                {
                    m_logEntries.Dequeue();
                }

                m_logEntries.Enqueue(
                    sequenceNumber + " [" + entry.Severity.ToString().ToUpperInvariant() + "] " +
                    entry.FormatMessageAndArguments() + " " + entry.Data.Select(x => x?.ToString() + "").Join(" "));
            }
            Device.BeginInvokeOnMainThread(() => RaisePropertyChanged(nameof(LogBuffer)));
        }