private void Update(T data)
            {
                lock (LockContext)
                {
                    var progress     = Converter(data);
                    var restorePoint = new ConsoleSettings();
                    Console.CursorVisible = false;
                    Console.SetCursorPosition(0, LineNumber);
                    var           bfWidth = Console.BufferWidth;
                    StringBuilder sb      = new StringBuilder(bfWidth);

                    if (!String.IsNullOrEmpty(Name))
                    {
                        sb.Insert(0, $"[ {Name} ] ");
                    }

                    var progressStr     = $" {progress.ToString("0.##", CultureInfo.CurrentCulture)}%";
                    var loadingBarWidth = bfWidth
                                          - sb.Length
                                          - progressStr.Length;

                    var cells = Convert.ToInt32(
                        Math.Ceiling(
                            loadingBarWidth * (progress / 100)));
                    sb.Insert(0, "=", cells);
                    sb.Append(progressStr);

                    Console.WriteLine(sb.ToString());

                    // Restore defaults.
                    restorePoint.Restore(true);
                }
            }
            private void Update(T data)
            {
                lock (LockContext)
                {
                    var message      = Converter(data);
                    var restorePoint = new ConsoleSettings();
                    Console.CursorVisible = false;
                    Console.SetCursorPosition(0, LineNumber);
                    var prefix = String.Empty;

                    if (!String.IsNullOrEmpty(Name))
                    {
                        prefix += $"[ {Name} ] ";
                    }

                    prefix += $"{message}";

                    Console.WriteLine(
                        prefix.PadRight(Console.BufferWidth));

                    // Restore defaults.
                    restorePoint.Restore(true);
                }
            }