zoukankan      html  css  js  c++  java
  • 最近用到的一个Debug类

    这个是我最近写的一个记录调试信息的类,基本功能和以前写过的UdpTraceListener类似:通过UDP数据报文发送调试信息发送出去。为了方便调试,增加了颜色和一些简单的指令功能。感觉还比较方便,这里记录一下,以备后续使用。

        static class Debug
        {
            static UdpClient client;
            static Debug()
            {
                client = new UdpClient();
                client.Connect(new IPEndPoint(IPAddress.Loopback, 3001));

                Clear();
            }

            public static void Write(ConsoleColor color, object obj)
            {
                Write(color, obj.ToString());
            }

            [MethodImpl(MethodImplOptions.Synchronized)]
            public static void Write(ConsoleColor color, string message)
            {
                if (message == null)
                    return;

                var dbgMsg = message;
                if (dbgMsg.Length > 80)
                    dbgMsg = dbgMsg.Substring(0, 70) + "..." + Environment.NewLine;

                Console.ForegroundColor = color;
                Console.Write(dbgMsg);

                SendCmd(0xff, (byte)color);
                SendMsg(message);
            }

            public static void WriteLine(ConsoleColor color, object obj)
            {
                if (obj == null)
                    return;

                WriteLine(color, obj.ToString());
            }

            public static void WriteLine(ConsoleColor color, string message)
            {
                Write(color, message + Environment.NewLine);
            }

            public static void Clear()
            {
                Console.Clear();
                SendCmd(0xfe, 0);
            }

            static void SendCmd(byte cmdType, byte cmdInfo)
            {
                client.Send(new byte[] { cmdType, cmdInfo }, 2);
            }

            static void SendMsg(string msg)
            {
                var data = Encoding.Default.GetBytes(msg);
                client.Send(data, data.Length);
            }
        }

  • 相关阅读:
    jQuery教程(一)
    jQuery教程(五)安全邮件列表
    jQuery教程(八)样式表切换
    jQuery教程(六)Jquery生成的HTML
    jQuery教程(七)更安全的Contact Forms,不带CAPTCHA
    Atcoder Grand Contest 005 E Sugigma: The Showdown(思维题)
    ORACLE数据库事务隔离级别
    c#操作Excel并指定单元格格式
    c# 获取客户端ip
    Webservice实现及原理
  • 原文地址:https://www.cnblogs.com/TianFang/p/2497278.html
Copyright © 2011-2022 走看看