首页 > 解决方案 > 在 java 中使用多个线程安全地编辑数据库

问题描述

我正在尝试在 java 中学习多线程。假设我有一个非常大的应用程序,它有 100 个正在运行的线程,试图执行一个在数据库中插入一行的同步方法。

因为,该方法是同步的,所以只有一个线程会获得该方法的锁,其余 99 将等待。

只有 1 个线程能够编辑数据库,其余线程将等待。这似乎是一个缓慢的过程。因为所有线程都将一一编辑数据库。有没有其他方法或概念可以以更快的方式安全地编辑数据库?

标签: javamultithreadingthread-safetysynchronized

解决方案


我会建议你阅读事务中的隔离级别以处理并发应用程序中的某些情况https://en.wikipedia.org/wiki/Isolation_(database_systems),有时是默认处理的。如果你只是在表中添加新行你不应该关心它并删除同步


推荐阅读