oracle 9i 中OracleMTSRecoveryService 服务有关问题
oracle 9i 中OracleMTSRecoveryService 服务问题
在oracle 9i 中,有一个这样的服务OracleMTSRecoveryService 当把本服务打开的时候
当如果oracle数据只关掉监听器,或把服务停了,
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:orcl",
"scott", "tiger");
这句就会卡死一直不会向下跑
而且这种情况下也不报出错误就是一直停在那里
这是经过测试的
这时候我们就要考虑到超时问题了......
目前有解决方案,但不是很好,就是用有返回值线程设置超时时间,但是
// 创建线程
ExecutorService threadPool = Executors.newSingleThreadExecutor();
// 调用线程池的submit方法执行任务
Future future = threadPool.submit(new MyCallableImpl("select * from emp"));
threadPool.shutdown();
在oracle 9i 中,有一个这样的服务OracleMTSRecoveryService 当把本服务打开的时候
当如果oracle数据只关掉监听器,或把服务停了,
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:orcl",
"scott", "tiger");
这句就会卡死一直不会向下跑
而且这种情况下也不报出错误就是一直停在那里
这是经过测试的
这时候我们就要考虑到超时问题了......
目前有解决方案,但不是很好,就是用有返回值线程设置超时时间,但是
// 创建线程
ExecutorService threadPool = Executors.newSingleThreadExecutor();
// 调用线程池的submit方法执行任务
Future future = threadPool.submit(new MyCallableImpl("select * from emp"));
threadPool.shutdown();