CLR保证一个类型构造器在每个AppDomain中只执行一次,而且这种执行是线程安全的。作用:就是初始化静态成员比如有几个静态成员需要初始化那你把初始化代码放到哪呢?放到普通构造函数里,那肯定不行。因为静态成员没有创建实例就要可用。专门建一个static public方法来初始化?这样用起来非常不方...
分类:
其他好文 时间:
2015-09-10 09:29:57
阅读次数:
119
1、取得控制台应用程序的根目录方法 ???? 方法1、Environment.CurrentDirectory?//取得或设置当前工作目录的完整限定路径 ???? 方法2、AppDomain.CurrentDomain.BaseDirectory?//获取基目录,它由程序集...
分类:
Web程序 时间:
2015-09-08 15:39:04
阅读次数:
152
线程池基础 1,线程的创建和销毁是一个昂贵的操作,线程调度以及上下文切换耗费时间和内存资源。 2,线程池是一个线程集合,供应你的用程序使用。 3,每个CLR有一个自己的线程池,线程池由CLR控制的所有的AppDomain共享。 4,CLR初始化的时候,线程池没有线程的。 5,线程...
使用.Net建立的可执行程序*.exe,并没有直接承载到进程当中,而是承载到应用程序域(AppDomain)当中。应用程序域是.Net引入的一个新概念,它比进程所占用的资源要少,可以被看做是一个轻量级的进程。一个应用程序域可以有多个线程,一个线程也可以穿梭于多个应用程序域。 在一个进程中可以包含多....
分类:
移动开发 时间:
2015-09-01 12:21:27
阅读次数:
211
很多时候,我们都想使用(开发)USB式(热插拔)的应用,例如,开发一个WinForm应用,并且这个WinForm应用能允许开发人员定制扩展插件,又例如,我们可能维护着一个WinService管理系统,这个WinService系统管理的形形色色各种各样的服务,这些服务也是各个"插件式"的类库,例如: ...
分类:
移动开发 时间:
2015-08-27 13:16:50
阅读次数:
213
private void SaveXML()
{
FileInfo fileInfo = new FileInfo(AppDomain.CurrentDomain.BaseDirectory + "list.xml");
if (fileInfo.Exists)
{
XmlDo...
建议65:总是处理未捕获的异常处理为捕获的异常是每个应用程序具备的基本功能,C#在APPDomain提供了UnhandledException事件来接收未捕获到的异常的通知。常见的应用如下: static void Main(string[] args) { ...
微软装配车的大门似乎只为货物装载敞开大门,却将卸载工人拒之门外。车门的钥匙只有一把,若要获得还需要你费一些心思。我在学习Remoting的时候,就遇到一个扰人的问题,就是Remoting为远程对象仅提供Register的方法,如果你要注销时,只有另辟蹊径。细心的开发员,会发现Visual Studi...
分类:
移动开发 时间:
2015-08-13 22:00:25
阅读次数:
135
很多时候,我们都想使用(开发)USB式(热插拔)的应用,例如,开发一个WinForm应用,并且这个WinForm应用能允许开发人员定制扩展插件,又例如,我们可能维护着一个WinService管理系统,这个WinService系统管理的形形色色各种各样的服务,这些服务也是各个"插件式"的类库,例如: ...
分类:
移动开发 时间:
2015-08-13 21:58:25
阅读次数:
195
编写程序的时候,经常需要用的项目根目录。自己总结如下 1、取得控制台应用程序的根目录方法 方法1、Environment.CurrentDirectory 取得或设置当前工作目录的完整限定路径 方法2、AppDomain.CurrentDomain.BaseDirectory 获取基...
分类:
Web程序 时间:
2015-08-05 14:34:37
阅读次数:
102