delphi 多线程读写数据库

delphi 多线程读写数据库,第1张

*** 作数据库之前对表进行lock, *** 作完后进行解锁。

也可以申请一个互斥变量,每次要 *** 作数据之前申请,结束后释放

前者用的是数据库自己提供的功能,后者是自己控制 *** 作别同时发生。建议用前者。

优化建议:

1 在你的代码里大点评测下 每个 *** 作花的时间 譬如 dom4j解析花了多久, 存储到数据库花了多久等等

2 评测哪些地方可以并行 *** 作以提高CPU利用率;

3 数据库 *** 作部分也可以做适当优化, 譬如批量提交可以显著提高插入速度, 譬如去除索引/主键后插入等;

4 不同机器的IO速度是不同的, 因此应该能提供运行时的任务调度参数化, 譬如多少个dom4j解析线程, 入库的批量数量等;

1共用一个连接就可以

2其实一样可以用lock实现,把数据库 *** 作写成一个函数,函数内加lock。c#会安排他们排队

比如

private static object privateObjectLock = new object();

public static xxoo()

{

lock(privateObjectLock)

{

//数据 *** 作语句

}

}

}

你在一个函数里实现数据库 *** 作。然后线程 *** 作数据库都调用他

以上就是关于delphi 多线程读写数据库全部的内容,包括:delphi 多线程读写数据库、Java多线程并发 *** 作数据库能否提高运行速度。、c# 多线程访问数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9506412.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存