请教关于ruby连接数据库超时的问题?
各位ruby高手们,有一个ruby超时控制的问题急需请教?我用ruby去连接数据库的ruby代码的例子如下(testdb.rb):require 'rubygems'
require 'dbi'
puts "Begin Conn"
dbh=DBI.connect('DBI:OCI8:orcl','sgpm','sgpm')
puts "connect db is OK!"
dbh.disconnect
我们用的是Solaris系统开发,我在终端上运行ruby testdb.rb时通常很快就会输出connect db is ok的消息,但是有时候在输出Begin Conn后光标一直停在那里,然后过了好几分钟后就会出现ORA-12170: TNS:Connect timeout occurred (DBI::DatabaseError)这种连接超时的消息。我有用timeout(5)想控制代码使之在5秒钟内返回,但是timeout函数根本就没有起作用还是等了几分钟。请教各位高手:(我想控制代码在在5秒中内执行完,即:如果5秒中内没有连接数据库成功的话我要强制退出程序。)这个功能如何实现呢?
在网上找了很久都没有找到解决的办法,恳求有ruby高手能够帮忙解决,万分感谢!!! 要不试试begin...rescue吧
页:
[1]