单例模式防数据并发[原创]
来源:互联网 发布:ubuntu 16 aptget 源 编辑:程序博客网 时间:2024/06/05 00:14
防止数据并发目前我使用到两种方式:1.数据表加锁.2.使用单例模式.
使用有状态的单例模式,用户一访问单例类时,单例类状态为初始状态可以返回单例类实例,并将单例类状态修改为状态一.此时用户二访问单例类,因状态为状态一,返加null值,客户端根据null值判断有用户正在使用单例类.当用户一完成操作后将单例类状态修改为初始状态.若再有用户访问该单例类,则可返回单例类实例.(单例类还有一个优点:仅在内存中存在一个实例)
代码示例如:
public class KeyTable
{
private static bool flag = true;
private static KeyTable kt = new KeyTable();
private int key;
private KeyTable()
{
}
public static KeyTable GetTable()
{
if (flag)
{
flag = false;
return kt;
}
return null;
}
public int GetKey(int i)
{
key = i;
key++;
System.Threading.Thread.Sleep(5000);
flag = true;
return key++;
}
}
客户端调用:
KeyTable kt = KeyTable.GetTable();
if (kt == null)
{
Response.Write("<script>alert('其它用户正在使用!');</script>");
}
else
{
Response.Write("<br />," + kt.GetKey(100).ToString());
}
- 单例模式防数据并发[原创]
- 单例模式(防继承,防克隆)
- 高并发单例模式
- 单例模式---并发访问
- 高并发单例模式
- 高并发单例模式
- 高并发单例模式
- 单例模式懒加载并发
- 单例模式高并发问题
- 基于多线程并发的单例模式
- 单例模式的并发访问
- java并发(单例模式)
- 多线程高并发单例模式
- 高并发下的单例模式
- 多线程并发下的单例模式
- 并发单例模式小总结
- 单例(Singleton)模式的Java实现[00原创]
- (原创)C#中的单例模式-笔记
- Linux下socket TCP的简单例子
- Flex Error 1119: Access of possibly undefined property.
- VC调试入门
- 【译】TestNG官方文档中文版(06)—— 测试方法、测试类和测试组(5.5-5.6)
- JAVA 如何创建/删除/修改/复制目录及文件 (转载)
- 单例模式防数据并发[原创]
- SQL SERVER 2008 重建损坏的master
- linux -cp命令
- 手持RTK系列产品特点分析
- 正确地做事与做正确的事同样重要——一位软件工程师的6年总结
- 截取字符串位数,不足的前面补0
- 从客户端中检测到有潜在危险的 Request.Form 值 简单描述
- Linux初步(二)——Linux 简单编程
- 实时更新toast文本值不重复弹出toast demo