
网关应用之 多协议转Modbus
去年做的多协议转Modbus项目[C#] 地热数据采集项目1 现场设备数据采集,并转存到ModbusTCP服务器,今年客户又要上二期。需要确认性能。他们需要数据,那就用MethodTimer.Fody做个简单的测试就OK了。


需要了解代码的执行效率,可以借助MethodTimer.Fody这个开源库。
主页:https://github.com/Fody/MethodTimer
1、安装Nuget包:
Install-Package MethodTimer.Fody
2、Add to FodyWeavers.xml
<Weavers>
<MethodTimer/>
</Weavers>
3、代码部分,在需要统计的方法上头加上[Time]:
public class MyClass
{
[Time]
public void MyMethod()
{
//Some code u are curious how long it takes
Console.WriteLine("Hello");
}
}
public class MyClass
{
public void MyMethod()
{
var stopwatch = Stopwatch.StartNew();
try
{
//Some code u are curious how long it takes
Console.WriteLine("Hello");
}
finally
{
stopwatch.Stop();
Trace.WriteLine("MyClass.MyMethod " + stopwatch.ElapsedMilliseconds + "ms");
}
}
}4、在VS的输出窗口查看调试信息。
如果希望进行日志输出的操作,定义下面的静态类:
public static class MethodTimeLogger
{
private static NLog.Logger _logger = NLog.LogManager.GetCurrentClassLogger();
public static void Log(MethodBase methodBase, TimeSpan elapsed, string message)
{
_logger.Debug($"{methodBase.Name}, {elapsed}, {message}");
}
}
