list表是查询,并行应该是可以的。
Exception表是插入,并行也应该是可以的,做好修改锁就好。
Record表是最后插入的,只有一条记录。串行就可以的。我的数据库是db2.
Exception表是插入,并行也应该是可以的,做好修改锁就好。
Record表是最后插入的,只有一条记录。串行就可以的。我的数据库是db2.
解决方案 »
- TcpListener类的应用:只能接收一次内容!
- 子线程中for循环影响主线程运行,如何解决
- 怎样用javascript写批量上传,很急的……
- c# 如何給巨集傳參數?
- 请问高手们:FlashGet中的一个树型结构的实现方法
- 跪求免费黑盒测试工具,哪位老大能帮帮忙啊
- 下班前的最后一问:有一个ds,里有表dt,表有一栏colm1,对表进行查询判断是否有colm1对应的值是“aaa”,如果有此记录,则显示ok.
- 怎样对整个解决方案 的XX.cs文件进行组织uing 移除和排序?
- 怎样判断一个小数的十分位和百分位是不是0
- process的StandardInput属性怎么用??
- c# 连接 读com口数据
- 求大神帮忙看看代码,这个是在wince用HttpWebRequest上传文件,提示上传失败
是cpu的核数的数量而定? 是核数*2 较为合适?
分析记录,如果是CPU密集型的,根据核心数量并发线程。
异常数据可以用一个单独的线程一批一批的导入。
•是否在读数据的时候使用锁
•读锁持续多长时间
•在读数据的时候使用何种类型的锁
•读操作希望读已经被其他事务排他锁住的数据时,怎么办?在这种情况下,SQL Server可以:
◦一直等到其他事务释放锁
◦读没有提交的数据
◦读数据最后提交后的版本
ANSI 99定义了4种事务隔离级别,SQL Server 2005能够完全支持这些级别:
•未提交读 在读数据时不会检查或使用任何锁。因此,在这种隔离级别中可能读取到没有提交的数据。
•已提交读 只读取提交的数据并等待其他事务释放排他锁。读数据的共享锁在读操作完成后立即释放。已提交读是SQL Server的默认隔离级别。
•可重复读 像已提交读级别那样读数据,但会保持共享锁直到事务结束。
•可序列化 工作方式类似于可重复读。但它不仅会锁定受影响的数据,还会锁定这个范围。这就阻止了新数据插入查询所涉及的范围,这种情况可以导致幻像读。
此外,SQL Server还有两种使用行版本控制来读取数据的事务级别(本章后文将详细检验这些隔离级别)。行版本控制允许一个事务在数据排他锁定后读取数据的最后提交版本。由于不必等待到锁释放就可进行读操作,因此查询性能得以大大增强。这两种隔离级别如下:
•已提交读快照 它是一种提交读级别的新实现。不像一般的提交读级别,SQL Server会读取最后提交的版本并因此不必在进行读操作时等待直到锁被释放。这个级别可以替代提交读级别。
•快照 这种隔离使用行版本来提供事务级别的读取一致性。这意味着在一个事务中,由于读一致性可以通过行版本控制实现,因此同样的数据总是可以像在可序列化级别上一样被读取而不必为防止来自其他事务的更改而被锁定。
无论定义什么隔离级别,对数据的更改总是通过排他锁来锁定并直到事务结束时才释放。
很多情况下,定义正确的隔离级别并不是一个简单的决定。作为一种通用的规则,要选择在尽可能短的时间内锁住最少数据,但同时依然可以为事务提供它所需的安全程度的隔离级别
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED --未提交读
SET TRANSACTION ISOLATION LEVEL READ COMMITTED --已提交读
SET TRANSACTION ISOLATION LEVEL REPEATABLE READ --获取一致的可重复读操作
SET TRANSACTION ISOLATION LEVEL SNAPSHOT --已提交读快照级
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE --系列化级别更多参加:
http://blog.csdn.net/hdhai9451/article/details/11028589
谢谢回复。
顺序调用的多进程 也是串行的吧?
Process.Start()即可,此方法启动进程后立刻返回,不等待进程结束。
我用多线程的时候碰到个
不支持一个 STA 线程上针对多个句柄的 WaitAll。我的是windows service的,我没有设置他是STA的,难道window service不能多线程?
我在我的方法上加 [MTAThread]也不行。
在main上加 [MTAThread]也不行。
能用异步的地方,不建议用线程。
是都要插入同一个数据库表的,你的意思就是不起作用了?因为insert之前有一段计算的过程,我以为这个计算的过程可以利用数据库自己的锁机制让别的线程进行inset。