数据库中的记录数不确定(因为可能随时都在增加),现拟开启10个线程处理新增加的记录,每线程最多处理10个记录。请问应该怎么设计?
我想的是这样的:设10个线程数组,每个线程处理10个记录(正在处理的记录加上一个标记);
但问题是,如果增加的记录突然超过1000个以上,那应该怎么启动线程去处理?
谢谢。
我想的是这样的:设10个线程数组,每个线程处理10个记录(正在处理的记录加上一个标记);
但问题是,如果增加的记录突然超过1000个以上,那应该怎么启动线程去处理?
谢谢。
解决方案 »
- C#通过SnmpSharpNet怎么获得整个CPU的占有率?
- C# 实现 远程桌面
- datagridview手动梆定后列标头能不能用combobox?
- 高分紧急求助,bs问题
- 如何将后面的控件显示到前面来?
- 关于C#中的属性和索引器的问题
- 请问各位利用C#如何分块读写ORACLE里的BOLB从而提高效率(C\S),避免程序假死。。。谢谢各位,不是SQL SERVER 哦
- 找不到类名或空间名称“DBAccess”,怎么解决阿??各位求求帮帮忙!!!
- 文件搜索的问题
- 怎么着手学习继承以及接口的写法。兄弟这里没有好的介绍C#的书籍!!!
- 在C#中,如何在一个类中激活另一个类中定义的事件呢,那怕发送win消息也行,怎么发啊,不会要调用api吧????
- "当传递具有新行的DataRow集合时,更新要求有效的InsertCommand.” 什么意思??
你的数据库数据每条记录应该有一个IDENTITY 的字段,比如说id。
那么规定10个线程每个线程处理一段ID的数据,
第一线程处理ID={1,10},{101,110},{201,210}......
第二线程处理ID={11,20},......
第三线程处理ID={21,30},......
...
第十线程处理ID={91,100},......
这样周而复始,不用在处理可以判断是否正在被处理。
这样可以节省很多时间以及空间性能。
不知道各位有什么看法。