X7ROOT File Manager
Current Path:
/opt/alt/ruby21/lib64/ruby/2.1.0
opt
/
alt
/
ruby21
/
lib64
/
ruby
/
2.1.0
/
ðŸ“
..
📄
English.rb
(6.44 KB)
📄
abbrev.rb
(3.31 KB)
📄
base64.rb
(2.63 KB)
📄
benchmark.rb
(17.95 KB)
ðŸ“
cgi
📄
cgi.rb
(9.84 KB)
📄
cmath.rb
(8.93 KB)
📄
complex.rb
(380 B)
📄
csv.rb
(81.68 KB)
ðŸ“
date
📄
date.rb
(946 B)
📄
debug.rb
(29.08 KB)
📄
delegate.rb
(11.13 KB)
ðŸ“
digest
📄
digest.rb
(2.34 KB)
ðŸ“
dl
📄
dl.rb
(280 B)
ðŸ“
drb
📄
drb.rb
(19 B)
📄
e2mmap.rb
(3.89 KB)
📄
erb.rb
(26.07 KB)
📄
expect.rb
(2.14 KB)
ðŸ“
fiddle
📄
fiddle.rb
(1.65 KB)
📄
fileutils.rb
(47.17 KB)
📄
find.rb
(2.36 KB)
📄
forwardable.rb
(7.86 KB)
📄
getoptlong.rb
(15.38 KB)
📄
gserver.rb
(8.86 KB)
ðŸ“
io
📄
ipaddr.rb
(17.05 KB)
ðŸ“
irb
📄
irb.rb
(20.03 KB)
ðŸ“
json
📄
json.rb
(1.74 KB)
📄
kconv.rb
(5.74 KB)
📄
logger.rb
(22.37 KB)
📄
mathn.rb
(6.52 KB)
ðŸ“
matrix
📄
matrix.rb
(45.43 KB)
📄
mkmf.rb
(80.5 KB)
📄
monitor.rb
(6.93 KB)
📄
mutex_m.rb
(2 KB)
ðŸ“
net
📄
observer.rb
(5.81 KB)
📄
open-uri.rb
(24.27 KB)
📄
open3.rb
(20.37 KB)
ðŸ“
openssl
📄
openssl.rb
(528 B)
ðŸ“
optparse
📄
optparse.rb
(50.8 KB)
📄
ostruct.rb
(7.7 KB)
📄
pathname.rb
(15.3 KB)
📄
pp.rb
(14.1 KB)
📄
prettyprint.rb
(16.33 KB)
📄
prime.rb
(13.2 KB)
📄
profile.rb
(205 B)
📄
profiler.rb
(4.51 KB)
📄
pstore.rb
(14.85 KB)
ðŸ“
psych
📄
psych.rb
(14.88 KB)
ðŸ“
racc
ðŸ“
rake
📄
rake.rb
(2.12 KB)
📄
rational.rb
(308 B)
ðŸ“
rbconfig
ðŸ“
rdoc
📄
rdoc.rb
(4.92 KB)
📄
resolv-replace.rb
(1.73 KB)
📄
resolv.rb
(72.31 KB)
ðŸ“
rexml
ðŸ“
rinda
ðŸ“
ripper
📄
ripper.rb
(2.53 KB)
ðŸ“
rss
📄
rss.rb
(2.84 KB)
ðŸ“
rubygems
📄
rubygems.rb
(30.97 KB)
📄
scanf.rb
(23.54 KB)
📄
securerandom.rb
(8.49 KB)
📄
set.rb
(18.7 KB)
ðŸ“
shell
📄
shell.rb
(10.3 KB)
📄
shellwords.rb
(5.94 KB)
📄
singleton.rb
(4.02 KB)
📄
socket.rb
(25.6 KB)
📄
sync.rb
(7.25 KB)
ðŸ“
syslog
📄
tempfile.rb
(11.4 KB)
ðŸ“
test
📄
thwait.rb
(3.38 KB)
📄
time.rb
(21.32 KB)
📄
timeout.rb
(3.7 KB)
📄
tmpdir.rb
(4.15 KB)
📄
tracer.rb
(6.4 KB)
📄
tsort.rb
(14.14 KB)
📄
ubygems.rb
(268 B)
📄
un.rb
(8.87 KB)
ðŸ“
uri
📄
uri.rb
(3.07 KB)
📄
weakref.rb
(3.23 KB)
ðŸ“
webrick
📄
webrick.rb
(6.69 KB)
ðŸ“
x86_64-linux
ðŸ“
xmlrpc
📄
xmlrpc.rb
(8.49 KB)
ðŸ“
yaml
📄
yaml.rb
(2.31 KB)
Editing: timeout.rb
# Timeout long-running blocks # # == Synopsis # # require 'timeout' # status = Timeout::timeout(5) { # # Something that should be interrupted if it takes more than 5 seconds... # } # # == Description # # Timeout provides a way to auto-terminate a potentially long-running # operation if it hasn't finished in a fixed amount of time. # # Previous versions didn't use a module for namespacing, however # #timeout is provided for backwards compatibility. You # should prefer Timeout#timeout instead. # # == Copyright # # Copyright:: (C) 2000 Network Applied Communication Laboratory, Inc. # Copyright:: (C) 2000 Information-technology Promotion Agency, Japan module Timeout # Raised by Timeout#timeout when the block times out. class Error < RuntimeError attr_reader :thread def self.catch(*args) exc = new(*args) exc.instance_variable_set(:@thread, Thread.current) exc.freeze ::Kernel.catch(exc) {yield exc} end def exception(*) if self.thread == Thread.current bt = caller begin throw(self, bt) rescue ArgumentError => e raise unless e.message.start_with?("uncaught throw") raise Error, message, backtrace end end self end end ExitException = Error # :stopdoc: THIS_FILE = /\A#{Regexp.quote(__FILE__)}:/o CALLER_OFFSET = ((c = caller[0]) && THIS_FILE =~ c) ? 1 : 0 # :startdoc: # Perform an operation in a block, raising an error if it takes longer than # +sec+ seconds to complete. # # +sec+:: Number of seconds to wait for the block to terminate. Any number # may be used, including Floats to specify fractional seconds. A # value of 0 or +nil+ will execute the block without any timeout. # +klass+:: Exception Class to raise if the block fails to terminate # in +sec+ seconds. Omitting will use the default, Timeout::Error # # Returns the result of the block *if* the block completed before # +sec+ seconds, otherwise throws an exception, based on the value of +klass+. # # The exception thrown to terminate the given block cannot be rescued inside # the block unless +klass+ is given explicitly. # # Note that this is both a method of module Timeout, so you can <tt>include # Timeout</tt> into your classes so they have a #timeout method, as well as # a module method, so you can call it directly as Timeout.timeout(). def timeout(sec, klass = nil) #:yield: +sec+ return yield(sec) if sec == nil or sec.zero? message = "execution expired" e = Error bl = proc do |exception| begin x = Thread.current y = Thread.start { begin sleep sec rescue => e x.raise e else x.raise exception, message end } return yield(sec) ensure if y y.kill y.join # make sure y is dead. end end end if klass begin bl.call(klass) rescue klass => e bt = e.backtrace end else bt = Error.catch(message, &bl) end rej = /\A#{Regexp.quote(__FILE__)}:#{__LINE__-4}\z/o bt.reject! {|m| rej =~ m} level = -caller(CALLER_OFFSET).size while THIS_FILE =~ bt[level] bt.delete_at(level) end raise(e, message, bt) end module_function :timeout end # Identical to: # # Timeout::timeout(n, e, &block). # # This method is deprecated and provided only for backwards compatibility. # You should use Timeout#timeout instead. def timeout(n, e = nil, &block) Timeout::timeout(n, e, &block) end # Another name for Timeout::Error, defined for backwards compatibility with # earlier versions of timeout.rb. TimeoutError = Timeout::Error
Upload File
Create Folder