我写了一个生成订单号(唯一约束)的函数public void xxx()
{
//生成订单号 并插入数据库
}如果这段代码并发执行,有可能造成订单号的重复,产生异常
为了避免并发 是不是只要在函数上面写上[STAThread]就可以了?[STAThread]
public void xxx()
{
//生成订单号 并插入数据库
}
{
//生成订单号 并插入数据库
}如果这段代码并发执行,有可能造成订单号的重复,产生异常
为了避免并发 是不是只要在函数上面写上[STAThread]就可以了?[STAThread]
public void xxx()
{
//生成订单号 并插入数据库
}
lock(myobj)
{
.....你的操作。
}不过我不建议你这么做,你为什么不用数据库的自动增长字段?或者自己生成随机不重复的键值
synchronized(this)
{//把代码写到这里来}