问题1.
DllImport如何释放?不要说会自动释放!因为我发现必须重启IIS才能删除该DLL,我用的虚拟主机,不可能重启IIS问题2.
DllImport会不会导致CPU占用过高,其实我是把一个exe的主要功能编译成dll供web使用
[DllImport("test.dll", SetLastError = true, CharSet = CharSet.Ansi, ExactSpelling = true, CallingConvention = CallingConvention.StdCall)]
    protected static extern string showInfo(string s);

解决方案 »

  1.   

    DllImport是CLR在调用此函数时自动完成的 
    内部有个LoadLibrary/FreeLibrary
    不必自己控制这个过程
      

  2.   

    一般用Finalize()  可以释放此类非托管资源
      

  3.   

    都定义成extern static了
    无需考虑释放问题
      

  4.   

    不释放内存是因为你自己的动态库的问题,不是iis或C#的问题。
      

  5.   

    >>其实我是把一个exe的主要功能编译成dll供web使用
    直接引用dll不就是了?为何要动态去调用?