问题描述
在Ruby中,如果使用Net::SSH,即使是用exec异步操作,执行比如“sleep 1000”这样的操作时也会挂起,不能在一定时间内返回。不知道Net::SSH有什么方法可以设置过期时间吗?另外,对于一些启动命令,比如启动一个程序,然后程序启动之后Net::SSH就会长时间挂起,不知道这背后的原理是什么? 问题补充:expect命令可以自己设置过期时间,所以当时也在找是不是net/ssh可以设置这样的过期时间。不过用Timeout确实可以解决问题。sevk 写道
解决方案
或Timeout.timeout(20){ Thread.new{ ... }}
解决方案二:
用 Thread.new 试试?
解决方案三:
你说的我都没接触到,不会啊,希望发展到这个方面来!
时间: 2024-12-31 08:58:08