小编Bob*_*ang的帖子

如何在这种情况下添加锁?

像这样的代码......

public void beforeUpdated(Log log){
    synchronized(this){
       query(log);
       merge(log);
       persist(log);
    }
}
Run Code Online (Sandbox Code Playgroud)

此方法在多线程环境下运行.日志的CRUD必须是原子操作.但只需要同步相同id的日志(log.getUuid()).如果我锁定所有操作,它必须是一个性能不佳.我只希望同一个id的日志在原子操作下锁定.我该怎么做?如果你有任何想法,请帮帮我,谢谢.

java multithreading

4
推荐指数
1
解决办法
223
查看次数

如何及时在pl/sql中找到准确的位置(ORA-06502:PL/SQL)

我有一个select语句,需要在我的pl/sql中选择几十列到自定义变量中.如下所示:

  select col1,
         col2,
         ....
         col30
  into   var1,
         ...
         var30
  from   table
  where ....
Run Code Online (Sandbox Code Playgroud)

在执行SP时遇到错误:

ORA-06502:PL/SQL:数字或值错误:字符串缓冲区太小

错误信息仅指出select语句的第一行号.即使我可以弄清楚我定义的变量太小而无法容纳列,但仍然难以精确定位错误定义的变量.这不是我调试此sp的有效方法.

有什么好主意,请告诉我.

oracle plsql

1
推荐指数
1
解决办法
319
查看次数

标签 统计

java ×1

multithreading ×1

oracle ×1

plsql ×1