【技术开发焦点】C#多线程学习(六) 互斥对象
系列文章导航:C#多线程学习(一) 多线程的相关概念C#多线程学习(二) 如何操纵一个线程C#多线程学习(三) 生产者和消费者C#多线程学习(四) 多线程的自动管理(线程池)C#多线程学习(五) 多线程的... [详细]
系列文章导航:C#多线程学习(一) 多线程的相关概念C#多线程学习(二) 如何操纵一个线程C#多线程学习(三) 生产者和消费者C#多线程学习(四) 多线程的自动管理(线程池)C#多线程学习(五) 多线程的... [详细]
系列文章导航:C#多线程学习(一) 多线程的相关概念C#多线程学习(二) 如何操纵一个线程C#多线程学习(三) 生产者和消费者C#多线程学习(四) 多线程的自动管理(线程池)C#多线程学习(五) 多线程的... [详细]
系列文章导航:C#多线程学习(一) 多线程的相关概念C#多线程学习(二) 如何操纵一个线程C#多线程学习(三) 生产者和消费者C#多线程学习(四) 多线程的自动管理(线程池)C#多线程学习(五) 多线程的... [详细]
系列文章导航:C#多线程学习(一) 多线程的相关概念C#多线程学习(二) 如何操纵一个线程C#多线程学习(三) 生产者和消费者C#多线程学习(四) 多线程的自动管理(线程池)C#多线程学习(五) 多线程的... [详细]
缘起 每次有新技术发布时,我们总能感受到两种截然不同的情绪:一种是恐惧和抵抗,伴随着这种情绪的还有诸如"C# 2.0用的挺好的,为什么要在C# 3.0搞到那么复杂?"或者"我还在使用C#1.0呢?"等言辞;...
软件工程是一门独特的工程艺术,需要解决的是不断改变的需求变化。而对于WCF,对于SOA,由于涉及的是对多个系统之间的交互问题,如何有效地解决不断改变的需求所带来的问题就显得更为重要:Service端...
在本篇文章上一部分Order Processing的例子中,我们看到原本已Collection形式定义的DetailList属性(public IList<TDetail> DetailList),在Data Contract中却以Array的方式体现(public OrderDetai...
通过第一部分的介绍,我们可以体会到,WCF 的Data Contract在CLR Type和Neutral Contract之间搭建了一座桥梁,弥合了.NET世界和厂商中立世界的差异。通过WCF Data Contract我们将CLR Data Type暴...
WCF客户端不能用在Using语句块中,因为它可能会抛出不可预知的异常。即使你捕获了异常,仍有可能一直保持连接。让我们来看看形成这一问题的历史原因,并提出几个补救措施。 在.NET中,资源管理的基础就是IDispos...
文/Dreamer 按:这几天我一直在写这篇东西,本来是胸有成竹,没想到后来越写越发现自己在这个题目下有太多话想说,而以我现在的能力又不能很好地概括总结,以至于越写越长,文章结构也变得混乱,到后来修改的时候每次...
在过去几年间,多线程编程已经成为了一个热门话题。虽然我们长久以来一直都希望能有高速响应的用户界面,但实现这个愿望的工具却迟迟不见踪迹。对于大多数框架(包括.NET程序员所使用的那些框架)来说,对用户界面的...
对于组件化的软件工程设计,很多开发人员都比较熟悉。组件化的设计适合于复杂的软件系统和团队协作开发。把软件系统划分成若干个组件,组件之间通过预先定义好的接口和协议进行通讯和协作,共同完成整个软件系统...
GDIWatch 是Virgo Software 开发的一个for Visual Studio的插件,支持2005/2008/2010,它的功能主要是在一个类似watch的窗口上显示被调试程序的GDI对象的当前状态,比如HBRUSH的颜色,大小,图片等等,并且它还能在调试...
作为站长,你可能已经知道外链(外部来源的反向链接)对搜索引擎排名是最重要的。不幸的是,许多网上营销者在追逐链接时常常捡了芝麻丢了西瓜。 下面是对主要链接策略中所有环节的详细分析和按时投资回报的分析,...
JSON是专门为浏览器中的网页上运行的JavaScript代码而设计的一种数据格式。在网站应用中使用JSON的场景越来越多,本文介绍ASP.NET中JSON的序列化和反序列化,主要对JSON的简单介绍,ASP.NET如何序列化和反序列化...
每种语言都有它特别的地方,对于JavaScript来说,使用var就可以声明任意类型的变量,这门脚本语言看起来很简单,然而想要写出优雅的代码却是需要不断积累经验的。本文利列举了JavaScript初学者应该注意的七个细节,与...
当你使用最新的操作系统,在最新的框架上构建应用程序,并且使用最新版本的Visual Studio的时候,你可以使用许多令人兴奋的新特性。你可以学习一下怎样使用Visual Studio 2010, WPF 4 和 the Windows API Code Pa...
这是一篇充满偏见的语言战争文章,是一场无意义的锤子和锤子的比拼。语言的复杂性可以通过选择语言回避,而问题本身的复杂性是选择哪个语言都无法回避的。 不屑语言战争的人可以轻松无视此文。 1、字符串...
My mind to your mind. My thoughts to your thoughts... -- Mr. Spock 什么是结对辅导 在前面的两篇敏捷咨询工具箱中,我分享了如何做读书写代码活动和OO训练营。认真的做好这两项活动之后,团队的...
四十几年前麦克卢汉喊出“媒介即信息”这句口号时,很多人认为他在哗众取宠。 十年前我第一次上网时只知道网上能玩游戏,能上oicq,能收发邮件,有bbs。我妈在家听人说网上有病毒,赶紧打电话给我叮嘱别...
记笔记 俗话说:好记性不如烂笔头。当然,这并不是说我们的脑子不好使,也不是叫我们不要用脑子记东西,而是提醒我们解放脑力,让大脑从事更有价值的思考。因此,这节课我们将会创建一个笔记本,用来记录课堂重点,但...
C#4.0关于缺省参数的新特性,相信大家都不会陌生。所谓缺省参数,顾名思义,就是在声明方法的某个参数的时候为之指定一个默认值,在调用该方法的时候如果采用该默认值,你就无须指定该参数。和很多语言层面特性(语法糖...
Semat计划于2009年12月由软件工程三位大师(合称“Troika”)Ivar Jacobson(UML、RUP、组件和组件架构、用例等技术之父),Bertrand Meyer(Eiffel和按约定设计之父)和Richard Soley(OMG主席)正式发起,倡导以坚...
在 .NET 类库中有一个 System.Diagnostics命名空间,该命名空间提供了一些与系统进程、事件日志、和性能计数器进行交互的类库。当中包括了两个对开发人员而言十分有用的类Debug类和Trace类。本文介绍了这两个...
在上两篇:我介绍了原创企业级控件库之组合查询控件 和原创企业级控件库之大数据量分页控件,受到了很多朋友的支持,给了我很大的动力,在此我特表感谢。有的朋友要求把源码提供上来,我在第一篇就讲了,源码会在我这个...
Randall Degges 写道 "我已经做了很久的程序员。当我最开始编程时,我将全部心思投入到电脑中编写代码。虽然,我的代码糟透了,但我仍然品尝了乐趣,收获了知识。然而,时过境迁,编程的单纯心离开了我。能剥夺程序员单...
在许多年前,“语言”就等同于“平台”,例如C,C++以及最早的Ruby和Python等等。但是随着技术发展,出现了一些通用的平台,例如.NET和Java,逐渐这些平台上的语言也越来越多。再后来,某些语言在不...
在我的这篇博文中,有这么一段话:“我一直在想,有没有办法可以单独限制View中的代码的访问权限,类似于trust level,只是这个trust level是用来限制模板中的代码。”。有读者johngeng问,为什么要用trust l...
作为软件开发人员,有一个小秘密:不管你写的代码有多么优秀,对另外一位开发人员来说,都毫无用处。 如果代码足够“干净”,你都可以吃代码上面的寿司,这没什么。如果每次代码显示在屏幕上时,约翰·...
在《上篇》中我们揭示了“缺省参数”的本质,现在我们接着来谈谈C#4.0中另一个重要的新特性:协变(Covariance)与逆变(Contravariance)。对于协变与逆变,大家肯定不会感到陌生,但是我相信有很多人不能很清晰...
软件设计有一句话叫做约定优于配置,很多人将其作为拒绝配置的理由。但是,约定和配置的使用,都有个度的问题。我不赞为了所谓的扩展性,为你的应用设计一套只有你自己才能看懂的配置体系。但是,在很多场景中,配置是...
在2011年伊始,翻开了全新一年的篇章,作为我们日常生活中不可或缺的消费电子产品亦然进入了全新的时代,随着一年一度的2011年CES国际消费电子产品展览会,在北京时间1月7日(美国西部当地时间1月6日),于美国赌城拉斯维...
我正在读 Do More Faster 这本书,书中更多的是给 TechStars 创业孵化公司做广告,但仍然值得一读。让我深有感触的是,书中提到有几个人,他们通过了审查,成功的 — 至少是获得了他们的启动资金,但他们并不懂编...