07 2012 档案
摘要:转自:http://www.cnblogs.com/freshman0216/archive/2008/07/29/1252253.html本篇从Monitor,Mutex,ManualResetEvent,AutoResetEvent,WaitHandler的类关系图开始, 希望通过本篇的介绍能对常见的线程同步方法有一个整体的认识,而对每种方式的使用细节,适用场合不会过多解释。让我们来看看这几个类的关系图:1.lock关键字lock是C#关键词,它将语句块标记为临界区,确保当一个线程位于代码的临界区时,另一个线程不进入临界区。如果其他线程试图进入锁定的代码,则它将一直等待(即被阻止),直到该
阅读全文
摘要:C#老生常谈之AutoResetEvent和ManualResetEvent一:终止状态和非终止状态 首先说说线程的终止状态和非终止状态。AutoResetEvent和ManualResetEvent的构造函数中,都有bool变量来指明线程的终止状态和非终止状态。true表示终止状态,false表示非终止状态。看代码片段1:代码片段1: AutoResetEvent _autoResetEvent = new AutoResetEvent(false); private void BT_Temp_Click(object sender, RoutedEventArgs e) { Thread
阅读全文
摘要:C#中的AutoResetEvent和ManualResetEvent用于实现线程同步。其基本工作原理是多个线程持有同一个XXXResetEvent,在这个XXXResetEvent未被set前,各线程都在WaitOne()除挂起;在这个XXXResetEvent被set后,所有被挂起的线程中有一个(AutoResetEvent的情况下)或全部(ManualResetEvent的情况下)恢复执行。AutoResetEvent与ManualResetEvent的差别在于某个线程在WaitOne()被挂起后重新获得执行权时,是否自动reset这个事件(Event),前者是自动reset的,后者不是
阅读全文
摘要:C#借助API实现黑盒自动化测试工具的编写本文代码下载(VS2010开发):http://download.csdn.net/source/2796362本文摘要:1:一个简单的例子 1.1:EnumChildWindows介绍 1.2:主要源码2:难点:如何获取指定的控件句柄 2.1:使用SPY++ 2.2:获取控件位置 2.3:获取控件ID1:一个简单的例子 在日常编码过程中,我们常常会进行自动化测试。这里的自动化测试不是指单元测试,而是模拟人工输入来进行快速的、高并发的测试。可以使用的自动化工具有LOADRUNNER,以及目前在VS2010中的功能很强大的测试工作平台(录制操作步骤,自动
阅读全文
摘要:CultrueInfo保存区域特定的信息,如关联的语言、子语言、国家/地区、日历和区域性约定。该类还提供对DateTimeFormatInfo、NumberformatInfo、CompareInfo和TextInfo的区域性特定实例的访问。这些对象包含区域性特定操作(如大小写、格式化日期时间和数字以及比较字符串)所需的信息。 部分区域性名称和标识符:区域性名称区域性标识符语言-国家/地区ar0x0001阿拉伯语ar-EG0x0C01阿拉伯语 - 埃及zh-CN0x0804中文 - 中国zh-CHS0x0004中文(简体)zh-TW0x0404中文 - 台湾zh-CHT0x7C04中文(繁体)
阅读全文
摘要:JSON是专门为浏览器中的网页上运行的JavaScript代码而设计的一种数据格式。在网站应用中使用JSON的场景越来越多,本文介绍ASP.NET中JSON的序列化和反序列化,主要对JSON的简单介绍,ASP.NET如何序列化和反序列化的处理,在序列化和反序列化对日期时间、集合、字典的处理。 一、JSON简介 JSON(JavaScript Object Notation,JavaScript对象表示法)是一种轻量级的数据交换格式。 JSON是“名值对”的集合。结构由大括号'{}',中括号'[]',逗号',',冒号':',双引号&
阅读全文
摘要:C#中Hashtable和HashMap的区别--很详细; 参考自http://www.hd1204.com/article/html/1655.html感谢原创;HashTable的应用非常广泛,HashMap是新框架中用来代替HashTable的类,也就是说建议使用HashMap,不要使用HashTable。可能你觉得HashTable很好用,为什么不用呢? 这里简单分析他们的区别。 1.HashTable的方法是同步的,HashMap未经同步,所以在多线程场合要手动同步HashMap这个区别就像Vector和ArrayList一样。 2.HashTable不允许null值(key和v..
阅读全文
摘要:1. mop mock tool framework : http://code.google.com/p/moq/wiki/QuickStart2. Rhino.mock framework : http://ayende.com/blog3. DotNetMock framework :
阅读全文
摘要:C# 集合类 Array Arraylist List Hashtable Dictionary Stack Queue 1.数组是固定大小的,不能伸缩。虽然System.Array.Resize这个泛型方法可以重置数组大小, 但是该方法是重新创建新设置大小的数组,用的是旧数组的元素初始化。随后以前的数组就废弃!而集合却是可变长的 2.数组要声明元素的类型,集合类的元素类型却是object. 3.数组可读可写不能声明只读数组。集合类可以提供ReadOnly方法以只读方式使用集合。 4.数组要有整数下标才能访问特定的元素,然而很多时候这样的下标并不是很有用。集合也是数据列表却不使用下标访问。 很
阅读全文
摘要:Global.asax 文件中配置自定义的错误?问:您要创建ASP.NET应用程序用于运行公司内部的Web站点,这个应用程序包含了50个页面。您想要配置这个应用程序以便当发生一个HTTP代码错误时它可以显示一个自定义的错误页面给用户。您想要花最小的代价完成这些目标,您应该怎么做?答:在这个应用程序的 Global.asax 文件中创建一个Application_Error过程去处理ASP.NET代码错误;在DataGrid控件的Footer显示员工合计数?问:您要创建一个显示公司员工列表的应用程序。您使用一个DataGrid控件显示员工的列表。您打算修改这个控件以便在这个Grid的Footer
阅读全文
摘要:什么是面向对象?面向对象OO = 面向对象的分析(OOA) + 面向对象的设计(OOD) + 面向对象的编程(OOP);通俗的解释就是万物皆对象,把所有的事物都看作一个个可以独立的对象(单元),它们可以自己完成自己的功能,而不是像C那样分成一个个函数;现在纯正的OO语言主要是JAVA和C#,C++也支持OO,C是面向过程的。阐述面向接口、面向对象、面向方面编程的区别?面向对象不好解释,可以理解为以一切元素都是对象,在设计时以对象为单位,考虑它的属性及方法。设计中采用了封装、继承、抽象的手法;面向接口本身就是面向对象的,无所谓区别,只不过面向接口的好处是耦合性低;面向方面Aspect-Orien
阅读全文
摘要:Web Service 数据传输有什么限制?为什么?DataTable可以作为Web Service参数传递吗?所传输的数据必须是可序列化的。因为需要转换为XML格式以可以穿越防火墙,做到真正的数据共享。因为DataSet处理DataTable的序列化以便进行封送处理,所以无法传递单个DataTable;在 ADO.NET 的三个基本数据对象 — DataReader、DataTable 和 DataSet 中,只有 DataSet 可以与 Web 服务之间传递。这是因为,为了与 Web 服务进行通信,对象必须是可序列化的(序列化是一个过程,它用于将对象的公共属性转换为 XML,并且因为 XM
阅读全文
摘要:if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_JobSet]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)drop procedure [dbo].[p_JobSet]GO/*--定时调用存储过程创建一个在指定时间,调用指定存储过程的作业作业执行完成后会自动删除--邹建 2004.07(引用请保留此信息)--*//*--调用示例exec p_JobSet 'master.dbo.xp_cmdshell',
阅读全文
摘要:FxCop介绍: FxCop是一个代码分析工具,它依照微软.NET框架的设计规范对托管代码assembly进行检查。它使用基于规则的引擎,来检查出你代码中不合规范的部分;你也可以定制自己的规则加入到这个引擎。 还有一款很流行的代码检测工具叫做StyleCop。之所以选择使用FxCop有两个原因,首先是StyleCop不支持VB.Net,而我们用VB.Net做后台开发的。第二是FxCop有非常强大的定制规则引擎的能力,这方面的能力StyleCop不如FxCop。FxCop使用: 1、下载FxCop 最新版本的是FxCop 10.0。我是使用FxCop 1.36版的。FxCop 10.0可以到微软
阅读全文