CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

[谢谢]关于反射调用.dll文件中方法的疑问!!!

楼主boyxia(>>雪饮狂刀 [抵制日货]<<)2005-02-23 10:56:30 在 .NET技术 / C# 提问

1.我的反射调用方法是在服务器端webservice上的,大家知道反射的调用速度比较慢,我想知道的是如果很多客户端同时调用这个文件的话,会不会导致资源瞬间占用会比较多而导致webservice崩溃  
   
  2.反射调用方法,执行完了资源释放会马上结束吗?还是等垃圾回收。  
   
  3.反射中的方法执行出错的时候如何释放这个.dll文件的调用?服务器端有时会出现.dll文件无法删除的情况,说明资源还在使用中,如果这样的话,回到第一个问题,会不会导致服务器资源占用过多,因为反射的调用没有及时释放。  
   
  先谢了!!!  
   
  -----------------------------  
  我得反射调用方法的代码送给大家  
  -----------------------------  
   
  Assembly   specUpdateClass   =   Assembly.LoadFile(AppDomain.CurrentDomain.BaseDirectory   +   "specUpdateDll/specUpdateClass.dll");  
  Type   sUCtype   =   specUpdateClass.GetType("specUpdateClass.jyClass");  
  Object   obj   =   sUCtype.InvokeMember(null,   BindingFlags.DeclaredOnly   |   BindingFlags.Public   |   BindingFlags.NonPublic   |   BindingFlags.Instance   |   BindingFlags.CreateInstance,   null,   null,   new   object[0]);  
   
  //设置连接字符串属性值  
  sUCtype.InvokeMember("_connStr",BindingFlags.SetProperty,null,obj,new   string[]{"数据库连接字串..."});    
   
  //执行特定接口方法  
  execResult   =   (bool)sUCtype.InvokeMember("AfterUpdateExecProgram",BindingFlags.InvokeMethod   |   BindingFlags.Public   |   BindingFlags.Instance,null,obj,  
  new   object[]{参数1,参数2});    
  问题点数:90、回复次数:15Top

1 楼MSNETFANS(笑天)回复于 2005-02-23 11:03:56 得分 0

学习。Top

2 楼doubon(DB.NET)回复于 2005-02-23 11:14:42 得分 5

顶!Top

3 楼yiyi0518(世上的盐和光)回复于 2005-02-23 11:16:33 得分 5

up~~Top

4 楼menuvb(戏子,白日做梦)回复于 2005-02-23 11:28:28 得分 50

应该不会。你可以看DNN这个开源项目,它的工厂模式就是采用了反射方式Top

5 楼web_gus(树欲静而风不止)回复于 2005-02-23 11:33:25 得分 0

没用过,upTop

6 楼aijing(我也可以的!)回复于 2005-02-23 11:59:58 得分 0

up~~  
  Top

7 楼boyxia(>>雪饮狂刀 [抵制日货]<<)回复于 2005-02-23 21:56:55 得分 0

没啥说的,顶啊!!!Top

8 楼yizhixiaozhu(天啦,手都起茧了)回复于 2005-02-23 22:13:02 得分 0

upTop

9 楼rockrabbit(rockrabbit)回复于 2005-02-24 00:07:22 得分 10

反射得到的DLL类,应该还是需要你自己释放吧.  
   
  其实,不管怎样,你都可在不用某资源的时候,强制释放该资源,或者调用垃圾收集器工作。Top

10 楼boyxia(>>雪饮狂刀 [抵制日货]<<)回复于 2005-02-24 13:35:49 得分 0

自己顶Top

11 楼jialiang(≈≈逆水行舟≈≈)回复于 2005-02-24 13:40:58 得分 0

关注Top

12 楼1979xt(搞.NET三年多,现在有点迷惘.)回复于 2005-02-24 14:00:46 得分 20

可以把obj放在using{}中执行块中.Top

13 楼boyxia(>>雪饮狂刀 [抵制日货]<<)回复于 2005-02-24 14:32:02 得分 0

楼上可以给个using用法的例子否?谢谢!Top

14 楼boyxia(>>雪饮狂刀 [抵制日货]<<)回复于 2005-02-24 14:39:16 得分 0

反射的对象支持   using   么?好像连Dipose方法都没有啊,如何释放?Top

15 楼boyxia(>>雪饮狂刀 [抵制日货]<<)回复于 2005-02-28 15:15:46 得分 0

顶!!!Top

相关问题

  • DLL的调用
  • dll的调用?
  • DLL调用
  • 调用DLL
  • 调用DLL
  • DLL调用
  • How 调用DLL ?
  • dll调用!
  • 调用dll
  • 调用DLL

关键词

  • 文件
  • 执行
  • 服务器
  • dll
  • null
  • 调用
  • 反射
  • bindingflags
  • specupdateclass
  • suctype

得分解答快速导航

  • 帖主:boyxia
  • doubon
  • yiyi0518
  • menuvb
  • rockrabbit
  • 1979xt

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo