在尝试使用 Neo4j 图表时,我发现在任何给定时间只能有一个具有“给定事务名称”的事务。这是真的还是我在理解交易方面犯了一些错误?
例如考虑以下代码:
updateNode(Node node){
Transaction txNode = graphDB.beginTx();
try{
//do some operations on node
txNode.success();
}finally{
txNode.finish();
}
}
如果我有多个进程或多个线程在同一个“graphDB”上运行,每个进程/线程可以为不同的节点调用上述函数,它会像只有一个名为“txNode”的事务,这会导致线程/进程之间出现问题吗?
我认为这是因为,事务是在图形级别创建的,所以每个事务(需要并行使用)必须有不同的名称。
如果我错了,请澄清...
如果我是对的,我们该如何应对这种情况?我们如何为并行运行的每个此类线程/进程创建具有不同名称的事务?