【技术开发焦点】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暴...
前我们讨论了系统主题以及如何通过鼠标使用Expression Blend来设置系统值。今天,我们来看看另一个可以用Expression Blend轻松实现的主题。如果你看到在各个地方比如YouTube(或我的个人网站,Blankensoft)展示...
前几天与同事激烈讨论了一下,有一点收获,记录起来。 首先给出MSDN的定义: lock 关键字可以用来确保代码块完成运行,而不会被其他线程中断。这是通过在代码块运行期间为给定对象获取互斥锁来实现的。 先...
记得最开始学习ASP.NET的时候,我们就被告知:Page_Load方法里面可以写页面加载的代码。 于是我们就懵懵懂懂写了很长时间的Page_Load方法。最近回过头思考,为什么一个普通的方法,能被自动调用呢?于是就得知了Au...
这篇来讲如何利用memcached实现一级缓存,以及如何让一级缓存组件支持在企业库,memcached或者其它第三方实施方案之间的切换。memcached本人并没有太多经验,如果文中有说的不对的地方,还希望批评指出,且文中关于...
David Wheeler有一句名言:“计算机科学中的大多数问题都可以通过增加一层间接性来解决。”间接代表着迂回。世间没有哪一条道路是完全笔直的。蜿蜒曲折的道路并非出于美的灵感,不过是因为我们需要绕...
抽象建立的这层间接性,解除了调用者与实现类之间的具体依赖,使得实现类可以单独变化,而不会影响到调用者。例如,当我们需要为元数据的读取操作定义对象时,好的编码习惯是为其定义一个接口:public interface Metada...
软件工程中,涉及如下主要阶段:立项、需求、设计、编码开发、测试、发布、培训上线维护等,其中,编码开发如同整座软件大楼的砖瓦用料,将直接影响产品的功用、质量、性能。 编码开发过程中,往往是多人参与,团队作...
监控前言 上一节我们提到了MSSQL的基于SQL Event的监控,但是有些时候我们需要更加详细、适用于调优排错的监控。SQL Server内部运行的可见性是的查询调整、优化和综合排查成为可能!这一节主要和大家说说SQL S...
2001年,我使用C#中的WebBrowser ActiveX控件编写了我的第一个应用程序,点此阅读,Kapil Sony写了一篇文章介绍了C# 2.0中的WebBrowser控件,每一次.NET新版本发布,控件和功能都会发生一些变化,现在,WebBrowser控件已...
英文原文:Why I Love Reading Other People’s Code And You Should Too 编者按:原文作者Alan Skorkin是一名软件开发人员,他在博客中分享对软件开发相关的心得,其中有很多优秀的文章,本文是其中的另一篇...
上一篇简单的说明了为什么要使用NoSQL。接下来我们看下如何把NoSQL引入到我们的项目中,我们到底要不要把NoSQL引入到项目中。 在过去,我们只需要学习和使用一种数据库技术,就能做几乎所有的数据库应用开发...
我们开发一个系统必须与数据库打交道,需要写N个SQL、存储过程、自定义函数、视图等,那么能否使用Visual Studio 2008进行数据库测试吗?当然是可以的,下面我就以一个简单的为例子,介绍如何利用Visual Studio 2008...
从事企业系统开发很多年了,在系统的工作流分析中,少不了要分析sql语句,当系统积累到一定规模后,所涉及的数据库表会以几何数增长,因此会经常碰到很长的sql语句,涉及到的表会达到几十张之多,当你拿到这样一段sql时,需...
本文是从 Programming Innocence 这篇文章翻译而来。 我已经干编程很久了。当我最初开始编程时,几乎能把所有的时间花在计算机上写程序。的确,我的程序写的很烂,但我充满了乐趣,我学到了很多。随着时间的推...
SharePoint 2010可以与Silverlight实现紧密集成。不管是在浏览器中运行的Silverlight程序还是单独的一个Silverlight程序,都能与SharePoint 2010实现很好的整合。本文中我们将实现一个Silverlight和SharePoin...
本文是从 On Improving When Your Friends Aren’t 这篇文章翻译而来。 刚好看到一位读者在 “Having Your Own Ethics is Lonely” 这篇文章上的评论。他问了一个在成功路上最困难的问...
Sinatra是Blake Mizerany在2007年9月开发的Ruby语言的Web框架。它最突出的特点就是轻量、快速。更难能可贵的是,Sinatra的源代码只有一千多行。 在第一次接触到Sinatra的时候,我便被它深深地吸引住了。随后...
理解POCO(Plain Old CLR Object)先要理解POJO。 1、什么是POJO? POJO的名称有多种,pure old java object 、plain ordinary java object 等。
按照Martin Fowler的解释是“Plain Old Java Obj...
当在服务器上部署 ASP.NET MVC3 的应用的时候,可能会看到如下的错误信息: 这表示你的服务器上没有安装 ASP.NET MVC3。 解决这个问题的方法有两种: 第一,当然是在服务器上安装 ASP.NET MVC3 了。不过,如...
本系列博文将使用微软RIA技术解决方案Silverlight以及扩展性管理框架Managed Extensibility Framework(MEF),以插件式架构设计为导线,分享本人在从事基于微软Silverlight技术构建的RIA系统中实施插件式系统架构...
架构设计并不是项简单的工作,架构设计最终的产物则是由不同的框架组件构成一套高扩展、稳定、安全、通用的开发框架平台。或许一提到架构设计,很多朋友都联想到了常用的框架组件:数据访问组件、日志组件、事务...
作为DBA,不仅仅是帮助开发人员写优秀的查询脚本、高效的数据存储架构。其实更多时候都是在运维,大部分工作时间都不算饱和的,可是为什么有些DBA如此忙碌、狼狈不抗甚至等到客户或者乙方公司抱怨呢,那很多原因...
使用JDBC API时,很多操作都要声明抛出java.sql.SQLException异常,通常情况下是要制定异常处理策略。而Spring的JDBC模块为我们提供了一套异常处理机制,这套异常系统的基类是DataAccessException,它是RuntimeExce...
我觉得,基本上可以说每个程序员都很熟悉“Hello World!”程序。依照惯例,它是学习编程语言、编译并运行你的首个程序的一种快速方法。然而,除此之外,它的价值不大。下面是我认为Hello World的十个问题...
这个问题来源于Apworks应用开发框架的设计。由于命令与查询职责的分离,使得基于CQRS体系结构风格的应用系统的外部存储系统的结构变得简单起来:在“命令”部分,简单地说,只需要 Event Store和Snapshot...