c#测试反射性能示例

 更新时间:2014年03月27日 10:16:17   作者:  
这篇文章主要介绍了c#测试反射性能示例,Activator.CreateInstance和AssemblyCreateInstance性能测试,需要的朋友可以参考下

Activator.CreateInstance和AssemblyCreateInstance性能测试

复制代码 代码如下:

using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Security.Cryptography;
using System.Text;
using HelloWorld.ServiceReference1;
using System.Globalization;
using System.Reflection;
using Interface;

namespace HelloWorld
{
    class Program
    {
        static void Main(string[] args)
        {
            Stopwatch s = new Stopwatch();
            Assembly a = Assembly.GetExecutingAssembly();

            //foreach (var st in a.GetExportedTypes())
            //{
            //    Console.WriteLine(st.Name);
            //}

            s.Reset();
            s.Start();
            Type t = a.GetType("HelloWorld.Test1");
            Interface1 i2 = (Interface1)(Activator.CreateInstance(t));
            Console.WriteLine((i2.Add(1, 2)));
            s.Stop();
            Console.WriteLine(s.Elapsed);


            s.Reset();
            s.Start();
            Interface1 i = (Interface1)a.CreateInstance("HelloWorld.Test1");
            Console.WriteLine((i.Add(1, 2)));
            s.Stop();
            Console.WriteLine(s.Elapsed);

        }
    }
    public class Test1 : Interface1
    {
        public int Add(int a, int b)
        {
            return a + b;
        }
    }
    public interface Interface1
    {
        int Add(int a, int b);
    }
}

相关文章

  • C#实现读取注册表监控当前操作系统已安装软件变化的方法

    C#实现读取注册表监控当前操作系统已安装软件变化的方法

    这篇文章主要介绍了C#实现读取注册表监控当前操作系统已安装软件变化的方法,涉及C#针对注册表的读取与监控技巧,非常具有实用价值,需要的朋友可以参考下
    2015-08-08
  • C#实现TreeView节点拖拽的方法

    C#实现TreeView节点拖拽的方法

    这篇文章主要介绍了C#实现TreeView节点拖拽的方法,涉及C#针对TreeView节点的动态添加及移除技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-09-09
  • C# 中如何使用Thread

    C# 中如何使用Thread

    这篇文章主要介绍了C# 中使用 Thread的方法,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下
    2021-01-01
  • C#中的is和as操作符区别小结

    C#中的is和as操作符区别小结

    这篇文章主要介绍了C#中的is和as操作符区别小结,is是验证操作对象是不是自己希望的,as是将对象转换成指定类型,需要的朋友可以参考下
    2015-01-01
  • c#中object、var和dynamic的区别小结

    c#中object、var和dynamic的区别小结

    这篇文章主要给大家介绍了关于c#中object、var和dynamic的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • WPF运行时替换方法实现mvvm自动触发刷新

    WPF运行时替换方法实现mvvm自动触发刷新

    这篇文章主要为大家详细介绍了WPF运行时如何实现setter不需要调方法就可以自动触发界面刷新,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-04-04
  • c#用Treeview实现FolderBrowerDialog 和动态获取系统图标(运用了Win32 dll类库)

    c#用Treeview实现FolderBrowerDialog 和动态获取系统图标(运用了Win32 

    其实,FolderBrowerDialog 很好用呢,有木有啊亲,反正我特别的喜欢,微软大哥把这个浏览文件夹的东东封装的多好呀
    2013-03-03
  • C#使用ping命令的两个例子

    C#使用ping命令的两个例子

    这篇文章主要介绍了C#使用ping命令的两个例子,本文给出了调用CMD命令和使用C# ping类的两个例子,需要的朋友可以参考下
    2014-08-08
  • C#简单实现防止多个程序运行的方法

    C#简单实现防止多个程序运行的方法

    这篇文章主要介绍了C#简单实现防止多个程序运行的方法,涉及C#进程操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2016-02-02
  • 浅析C# 装箱和拆箱

    浅析C# 装箱和拆箱

    这篇文章主要介绍了C# 装箱和拆箱的相关资料,文中示例代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07

最新评论