预览模式: 普通 | 列表

.NET面试知识点

1、如何处理并发?

你说的并发我碰到过的有两种,一种是应用服务器的并发(比如IIS并发)和数据库服务器的并发,前者需要通过负载均衡和多应用服务器来解决,后者也可以通过架构多数据库服务器来解决。另外一种是应用程序中数据的并发,比如A用户登陆到办公系统,B用户也登陆到办公系统,两个人对于同一条数据都有修改权限。现在假设A用户打开了修改界面(已经读取了数据库中某条具体的数据),还没有点修改按钮;这个时候B用户也打开了修改页面,并且点了修改按钮;这个时候A用户如果再去点修改按钮,那么这个就是我说的后面一种并发类型。这种并发是我们程序中需要考虑的。常见的有三种做法,一种就是后面的那个人修改的直接把前面人修改的覆盖掉(这种是偷懒的办法,用于不是很重要的数据);第二种处理办法是A用户点修改的时候,弹出一个对话框来,告诉用户这条记录已经被B用户修改过了,并且修改后的内容显示出来,问A用户是否继续保存(这种是比较好的解决办法,但是程序弄起来比较麻烦);第三种就是直接报错,告诉人家该记录因为什么原因不能保存。

2、工厂模式与抽象工厂有什么区别?
工厂方法模式:
一个抽象产品类,可以派生出多个具体产品类。  
一个抽象工厂类,可以派生出多个具体工厂类。  
每个具体工厂类只能创建一个具体产品类的实例。

抽象工厂模式:

查看更多...

分类:工作 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 797