C#
文章平均质量分 55
mengsuo
这个作者很懒,什么都没留下…
展开
-
多线程:C#线程同步lock,Monitor,Mutex,同步事件和等待句柄(上)(转)
本篇从Monitor,Mutex,ManualResetEvent,AutoResetEvent,WaitHandler的类关系图开始,希望通过本篇的介绍能对常见的线程同步方法有一个整体的认识,而对每种方式的使用细节,适用场合不会过多解释。让我们来看看这几个类的关系图: 1.lock关键字 lock是C#关键词,它将语句块标记为临界区,确保当一个线程位于代码的转载 2008-12-06 16:15:00 · 1910 阅读 · 1 评论 -
C#委托的异步调用
C#委托的异步调用本文将主要通过“同步调用”、“异步调用”、“异步回调”三个示例来讲解在用委托执行同一个“加法类”的时候的的区别和利弊。 首先,通过代码定义一个委托和下面三个示例将要调用的方法:/*添加的命名空间using System.Threading;using System.Runtime.Remoting.Messaging;*/ publi转载 2013-05-27 21:07:17 · 902 阅读 · 0 评论 -
图片文件上传
C# code/// /// 上传图片 /// /// 案件号 /// 车编号、人编号 /// 压缩后二进制格式的图片 /// 图片备注 /// 存储在数据库中的表名 /// 单证类型 /// EXIF信息 /// public string CaseUpLoadImage(string casei转载 2012-05-14 15:46:21 · 532 阅读 · 0 评论 -
C# GB2312 转 UTF-8
C# GB2312 转 UTF-8byte[] buf = Encoding.GetEncoding(936).GetBytes(str);Encoding e1 = Encoding.UTF8;Encoding e2 = Encoding.GetEncoding(936);string word = System.Web.HttpUtility.UrlEncode(E原创 2012-05-11 16:13:59 · 1857 阅读 · 0 评论 -
常用WebServices返回数据的4种方法比较
转载:http://www.cnblogs.com/wlb/archive/2009/04/13/1434419.html以前经常在群里听到朋友们说WebServices的性能特别的慢,说的如何如何。说实话,WebServices的确比调用本地数据要慢一些,可是究竟有多慢,真的如朋友们说的那么难以忍受吗?我个人感觉,多半原因在处理的方式上。让我们亲自编写测试代码,来证明这一切吧。文章由于是我一转载 2012-03-30 14:03:34 · 605 阅读 · 1 评论 -
事件与委托趣谈
事件与委托趣谈转帖:http://blog.csdn.net/chiangbt/article/details/2050174 事件与委托似乎很难以理解,这是因为它们的使用方式与常用的编码有很大的差别,例如通常编写的都是同步代码,调用一个类型的方法,会即刻出转载 2011-08-23 11:05:50 · 602 阅读 · 1 评论 -
关于VS2008+Win7出现error MSB3216: Cannot register assembly
Win7环境下,VS2008+ArcEngine9.3,在项目中,新建类库,但在项目进行编译时出现了错误: MyGISClassLib -> D:/Project/MSProject/MyGIS/MyGISClassLib/bin/Debug/MyGISClassLib.dll C:/Windows/Microsoft.NET/Framework/v3.5/Microsoft.Common.tar转载 2011-06-29 16:31:00 · 1911 阅读 · 0 评论 -
C#中ToString格式大全
C#中ToString格式大全<br /><br /> <br />C<br /> <br /> <br />货币<br /> <br /> <br />2.5.ToString("C")<br /> <br /> <br />¥2.50 <br /> <br /> <br />D<br /> <br /> <br />十进制数<br /> <br /> <br />25.ToString("D5")<br /> <br /> <br />00025<br /> <br /> <br />E<br /> <转载 2011-03-28 10:09:00 · 543 阅读 · 0 评论 -
JS设置IE可信站点及ActiveX设置
<br />通过网页修改activex安全设置,添加信任站点,禁用弹出窗口阻止程序 <br />信任站点的注册表项<br />HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Internet Settings/ZoneMap/Ranges/Range[*]<br />ActiveX的注册表项<br />HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Internet原创 2011-03-21 14:04:00 · 1969 阅读 · 2 评论 -
VS.NET 开发Windows服务的步骤
<br />在很多应用中需要做windows服务来在一些后台操作,比如监视应用程序的运行状况等<br /><br />利用vs.net我们可以在几分钟之内建立其windows服务,非常简单<br /><br />下面说一下步骤<br />1. 新建一个项目<br />2. 从一个可用的项目模板列表当中选择Windows服务<br />3. 设计器会以设计模式打开<br />4. 然后为这个服务填加功能<br />5. 将这个服务程序切换到设计视图<br />6. 右击设计视图选择“添加安装程序”<br />转载 2011-03-08 13:51:00 · 558 阅读 · 0 评论 -
C#单例模式的三种写法
<br /> <br /><br /> <br />第一种最简单,但没有考虑线程安全,在多线程时可能会出问题,不过俺从没看过出错的现象,表鄙视我……<br />public class Singleton<br />{<br /> private static Singleton _instance = null;<br /> private Singleton(){}<br /> public static Singleton CreateInstance()<br /> {<br转载 2011-03-08 13:55:00 · 802 阅读 · 0 评论 -
C# 中的委托和事件
C# 中的委托和事件引言<br />委托 和 事件在 .Net Framework中的应用非常广泛,然而,较好地理解委托和事件对很多接触C#时间不长的人来说并不容易。它们就像是一道槛儿,过了这个槛的人,觉得真是太容易了,而没有过去的人每次见到委托和事件就觉得心里别(biè)得慌,混身不自在。本文中,我将通过两个范例由浅入深地讲述什么是委托、为什么要使用委托、事件的由来、.Net Framework中的委托和事件、委托和事件对Observer设计模式的意义,对它们的中间代码也做了讨论。将方法作为方法的参数<b转载 2010-09-30 17:21:00 · 575 阅读 · 0 评论 -
C#中的问号
<br />在C#中有个较为重要,而常被一些人忽视的符号——问号(?)。在这里整理一下它在C#的几种情况:<br /><br /> 1. 可空类型修饰符“T?”。<br /> 可空类型的基础类型可以是任何非可空值类型或任何具有struct约束的类型参数,但不能是可空类型或引用类型。例如:int? 代表是可空的整形,而 int??则是无效类型。即可空类型可以表示其基础类型的所有值和一个额外的空值。语法T?是System.Nullable的缩写形式。可空类型具有一个HasValue?的bool类型只读属性,原创 2010-08-16 10:07:00 · 1065 阅读 · 0 评论 -
C#获取相对路径
<br />一、获取当前文件的路径 <br />1. System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName <br />获取模块的完整路径,包括文件名。 <br />2. System.Environment.CurrentDirectory <br />获取和设置当前目录(该进程从中启动的目录)的完全限定目录。 <br />3. System.IO.Directory.GetCurrentDirectory() <br原创 2010-07-14 14:56:00 · 860 阅读 · 0 评论 -
C#中千分位问题
<br /><br />1、C#中用最简单的方法把数字(不含小数)转换为千分位格式:<br /> 如1234567变成1,234,567<br /> 方法:1234567.ToString("###,###") 或 1234567.ToString("N0") <br /> <br /> 2、C#中把数字转换成带两位小数的千分位字符:<br /> 如1234567.891变成1,234,567.89<br /> 方法:String.Format("{0:N}",12原创 2010-07-14 14:54:00 · 1802 阅读 · 0 评论 -
小测试
具体的需求是 在某一时间点,只有N个线程在并发执行,如果有多余的线程,则排队等候~ 还真是费尽心思啊~最终还是被我攻克了~ 下面我就来说说具体的实现 C#提供了Mutex与Interlocked这两个与线程相关的类,都在Threading命名空间下~! Mutex中提供了WiteOne,ReleaseMutex 两个实例方法~ WiteOne的作用是"阻塞当前线程,提供对该线程的原子操作" 也就是原创 2008-12-06 16:24:00 · 515 阅读 · 0 评论 -
多线程:C#线程同步lock,Monitor,Mutex,同步事件和等待句柄(下) (转)
前两篇简单介绍了线程同步lock,Monitor,同步事件EventWaitHandler,互斥体Mutex的基本用法,在此基础上,我们对它们用法进行比较,并给出什么时候需要锁什么时候不需要的几点建议。最后,介绍几个FCL中线程安全的类,集合类的锁定方式等,做为对线程同步系列的完善和补充。 1.几种同步方法的区别 lock和Monitor是.NET用一个特殊结构实转载 2008-12-06 16:18:00 · 2601 阅读 · 0 评论 -
多线程:C#线程同步lock,Monitor,Mutex,同步事件和等待句柄(中) (转)
本篇继续介绍WaitHandler类及其子类Mutex,ManualResetEvent,AutoResetEvent的用法。.NET中线程同步的方式多的让人看了眼花缭乱,究竟该怎么去理解呢?其实,我们抛开.NET环境看线程同步,无非是执行两种操作:一是互斥/加锁,目的是保证临界区代码操作的“原子性”;另一种是信号灯操作,目的是保证多个线程按照一定顺序执行,如生产者线程要先于消费者线程执行。.N转载 2008-12-06 16:17:00 · 2205 阅读 · 0 评论 -
错误 1 类型“System.Web.Mvc.ModelClientValidationRule”同时存在于“c:\Progra
MVC3 类型“System.Web.Mvc.ModelClientValidationRule”同时存在问题描述:在用vs生成MVC时若使用Internet应用程序为模版,项目建好后重新编译下无法通过,弹出错误:解决方案:问题出来后,询问了身边很多人都是一头雾水,于是乎各种谷歌和百度,还好功夫不负有心人!终于找到一个解决方法,我把前辈写的方案整理一下,供大家参考!如果你在创建转载 2013-05-15 11:00:12 · 2222 阅读 · 0 评论