private static final Lock lock = new ReentrantLock();
public static void main(String[] args) throws InterruptedException, TimeoutException { lock.lock(); //SQl 连接数据库 访问数据库语句 } catch (Exception e) {
System.out.println(e.getMessage()); } finally {
lock.unlock(); } } 思路:在与数据库建立连接的时候,先锁定数据库,当连接关闭之后,解除锁定。 多线程操作数据库:先记录下线程PID,每次有连接建立的时候,先看看这个pid有没有释放,如果没有就放心,正常操作。如果有,就等待..几秒,等待超时的就catch
|
|