我在Postgresql数据库中有一个表。我尝试通过Java代码向表中插入一行,这需要23毫秒。当我通过多线程在任意时间最大线程数为300的情况下执行1000次相同的代码时,结果输出时间与一个查询执行时间的1000倍大致相同。我已经检查了代码。在Java端没有获得锁。在数据库级别是否获得了任何内部锁
答案 0 :(得分:-1)
是的,因为postgres是ACID(原子性,一致性,隔离性,耐久性)投诉。更新,插入和删除在事务进行时在表上设置锁。我已经附上了Postgres文档的链接。 https://www.postgresql.org/docs/9.1/static/explicit-locking.html
希望这会有所帮助