摘要: 我们可以通过很多数据库选项来控制数据库的行为,某些必须设置为ON或者OFF,另一些只能从可选值中取值。详细说明如下: 1.查看数据库配置:SELECT * FROM sys.databases。 2.状态选项 1)用户访问属性 SINGLE_USER(单用户):数据库一次只能有一个连接。    RESTRICTED_USER(受限制用户):数据库只接受合格的用户连接,一般这些用户属于dbcreat... 阅读全文
posted @ 2010-09-20 22:39 Ale 阅读(945) 评论(0) 推荐(0) 编辑
摘要: 引言  本篇文章主要介绍.NET中6个重要的概念:栈,堆,值类型,引用类型,装箱,拆箱。文章开始介绍当你声明一个变量时,编译器内部发生了什么,然后介绍两个重要的概念:栈和堆;最后介绍值类型和引用类型,并说明一些有关它们的重要原理。  最后通过一个简单的示例代码说明装箱拆箱带来的性能损耗。声明变量的内部机制  在.NET程序中,当你声明一个变量,将在内存中分配一块内存。这块内存分为三部分:1,变量名... 阅读全文
posted @ 2010-09-20 21:44 Ale 阅读(334) 评论(0) 推荐(0) 编辑
摘要: 1.几种同步方法的区别lock和Monitor是.NET用一个特殊结构实现的,Monitor对象是完全托管的、完全可移植的,并且在操作系统资源要求方面可能更为有效,同步速度较快,但不能跨进程同步。lock(Monitor.Enter和Monitor.Exit方法的封装),主要作用是锁定临界区,使临界区代码只能被获得锁的线程执行。Monitor.Wait和Monitor.Pulse用于线程同步,类似... 阅读全文
posted @ 2010-04-17 19:17 Ale 阅读(379) 评论(0) 推荐(0) 编辑
摘要: 本篇继续介绍WaitHandler类及其子类Mutex,ManualResetEvent,AutoResetEvent的用法。.NET中线程同步的方式多的让人看了眼花缭乱,究竟该怎么去理解呢?其实,我们抛开.NET环境看线程同步,无非是执行两种操作:一是互斥/加锁,目的是保证临界区代码操作的“原子性”;另一种是信号灯操作,目的是保证多个线程按照一定顺序执行,如生产者线程要先... 阅读全文
posted @ 2010-04-17 19:16 Ale 阅读(296) 评论(0) 推荐(0) 编辑
摘要: 本篇从Monitor,Mutex,ManualResetEvent,AutoResetEvent,WaitHandler的类关系图开始,希望通过本篇的介绍能对常见的线程同步方法有一个整体的认识,而对每种方式的使用细节,适用场合不会过多解释。让我们来看看这几个类的关系图: 1.lock关键字 lock是C#关键词,它将语句块标记为临界区,确保当一个线程位于代码的临界区时,另一个线程不进入临界区。如... 阅读全文
posted @ 2010-04-17 19:14 Ale 阅读(297) 评论(0) 推荐(0) 编辑
摘要: 最近公司要求使用Team Explorer,顺利安装后结果总是激活不了,卸载VS2008,重新安装后还是那样。实在无奈都有重装系统的冲动了,后来仔细考虑下,可能是因为用户的配置数据没有删除掉。尝试恢复Visual Studio 初始状态 :1。关闭所有的Visual Studio 实例2。单击“开始”,选择“运行...”。3。键入“dev... 阅读全文
posted @ 2010-04-17 10:45 Ale 阅读(439) 评论(0) 推荐(0) 编辑
摘要: 调试快捷键F6: 生成解决方案Ctrl+F6: 生成当前项目F7: 查看代码Shift+F7: 查看窗体设计器F5: 启动调试Ctrl+F5: 开始执行(不调试)Shift+F5: 停止调试Ctrl+Shift+F5: 重启调试F9: 切换断点Ctrl+F9: 启用/停止断点Ctrl+Shift+F9: 删除全部断点F10: 逐过程Ctrl+F10: 运行到光标处F11: 逐语句编辑快捷键Shif... 阅读全文
posted @ 2009-12-05 10:31 Ale 阅读(426) 评论(0) 推荐(0) 编辑