zoukankan      html  css  js  c++  java
  • C3P0 APPARENT DEADLOCK

    一,c3p0执行一段时间后报错例如以下

    W 07-26_00:58:27 ThreadPoolAsynchronousRunner.java 608 com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@70929ab6 -- APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks! 
    W 07-26_00:58:39 ThreadPoolAsynchronousRunner.java 608 com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@4496b93a -- APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks!

    二,解决方法例如以下


    1,更新c3p0版本号到0.9.2.1 该版本号优化了获取connection的规则

    2,首先改动c3p0配置參数

    <!--JDBC的标准參数。用以控制数据源内载入的PreparedStatements数量。但因为预缓存的statements
           属于单个connection而不是整个连接池。所以设置这个參数须要考虑到多方面的因素。
           假设maxStatements与maxStatementsPerConnection均为0,则缓存被关闭。

    Default: 0--> <property name="maxStatements" value="0"/> <!--连接池用完时客户调用getConnection()后等待获取连接的时间。单位:毫秒。超时后会抛出--> <!--SQLEXCEPTION,假设设置0,则无限等待。Default:0--> <property name="checkoutTimeout" value="100"/>



  • 相关阅读:
    Extjs4单选按钮
    下拉框comboxBox本地数据源示例
    处理您的请求时发生异常。此外,对第一个异常执行自定义错误页时发生另一异常。已终止请
    hoj1568
    hoj3434
    poj2924
    poj2909
    hoj3433
    理解Python闭包,这应该是最好的例子
    Spring 学习笔记
  • 原文地址:https://www.cnblogs.com/zsychanpin/p/6953768.html
Copyright © 2011-2022 走看看