【发布时间】:2014-11-03 06:12:00
【问题描述】:
我正在使用 H2 db(在 Java 的内存模式下)并且遇到了障碍。我已经意识到,如果我在 Java 中有多个线程,每个线程在 H2 中运行一个存储过程,在 H2 级别,一切都按顺序运行。换句话说,虽然我的 Java 客户端是多线程的,但 H2 不是。
现在,我看到网上有人评论说 H2 可以在多线程模式下运行。但是我找不到一些具体的步骤/文档/教程来实现这一点。有人可以帮我吗?
我正在寻找两个具体的答案
- H2 能否从多线程 Java 客户端以多线程方式运行?
- 如果可以的话,有人可以指点我一些材料吗?
我已阅读以下链接:
- https://jira.codehaus.org/browse/GEOT-2832
- https://groups.google.com/forum/#!topic/h2-database/VoE3AU7mSuM
- http://www.h2database.com/html/features.html
我知道MULTI_THREADED=1 应该让 H2 以多线程方式运行。但是,我似乎没有找到说它对他/她有用的人。或者分享了如何/在哪里设置MULTI_THREADED=1 的步骤的人。
感谢您的帮助。
【问题讨论】:
-
请不要编辑和添加无用的东西。在 SO 上,没有人喜欢与问题/答案无关的文字,因此请删除“感谢您的帮助”、“提前致谢”、“希望对您有所帮助”...
-
嗨,我从小就彬彬有礼,尤其是在公共场合。如果您不介意,我想继续感谢人们提供的任何帮助。问候。
-
请阅读该站点的帮助页面/meta.stackoverflow.com 以了解该站点不需要这些东西。我不介意,但请不要介意代表 > 2k 的人从您的问题中删除这些行
-
您将“MULTI_THREADED=1”标志添加到 JDBC URL 的末尾。像这样:jdbc:h2:file:///C:/path/to/h2/db;WRITE_DELAY=0;AUTOCOMMIT=ON;AUTO_SERVER=TRUE;MULTI_THREADED=1 这个例子来自github.com/Norconex/collector-filesystem/issues/28
标签: java multithreading h2