Class: DRb::ExtServManager (Ruby 2.2.4)
Description: Class : DRb::ExtServManager - Ruby 2.2.4

- Home
- Core 2.2.4
- Std-lib 2.2.4
- Downloads

Support for the Ruby 2.2 series has ended. See here for reference.

### Home Classes Methods

### In Files

- drb/extservm.rb

### Parent

Object

### Methods

- ::command
- ::command=
- ::new
- #regist
- #service
- #unregist

### Included Modules

- DRb::DRbUndumped
- MonitorMixin

### Class/Module Index

Quicksearch

- ACL
- ACL::ACLEntry
- ACL::ACLList
- DRb
- DRb::DRbArray
- DRb::DRbBadScheme
- DRb::DRbBadURI
- DRb::DRbConn
- DRb::DRbConnError
- DRb::DRbError
- DRb::DRbIdConv
- DRb::DRbIdConv
- DRb::DRbMessage
- DRb::DRbObject
- DRb::DRbObject
- DRb::DRbObservable
- DRb::DRbProtocol
- DRb::DRbRemoteError
- DRb::DRbSSLSocket
- DRb::DRbSSLSocket::SSLConfig
- DRb::DRbServerNotFound
- DRb::DRbTCPSocket
- DRb::DRbUNIXSocket
- DRb::DRbUndumped
- DRb::DRbUndumped
- DRb::DRbUnknown
- DRb::DRbUnknownError
- DRb::ExtServ
- DRb::ExtServManager
- DRb::GW
- DRb::GWIdConv
- DRb::TimerIdConv
- DRb::TimerIdConv::TimerHolder2
- DRb::TimerIdConv::TimerHolder2::InvalidIndexError
- Object

No matching classes.

# DRb::ExtServManager

### Attributes

uri[RW]

### Public Class Methods

command() click to toggle source

                   # File drb/extservm.rb, line 17
    def self.command
      @@command
    end

command=(cmd) click to toggle source

                   # File drb/extservm.rb, line 21
    def self.command=(cmd)
      @@command = cmd
    end

new() click to toggle source

                   # File drb/extservm.rb, line 25
    def initialize
      super()
      @cond = new_cond
      @servers = {}
      @waiting = []
      @queue = Queue.new
      @thread = invoke_thread
      @uri = nil
    end

### Public Instance Methods

regist(name, ro) click to toggle source

                   # File drb/extservm.rb, line 47
    def regist(name, ro)
      synchronize do
        @servers[name] = ro
        @cond.signal
      end
      self
    end

service(name) click to toggle source

                   # File drb/extservm.rb, line 36
    def service(name)
      synchronize do
        while true
          server = @servers[name]
          return server if server && server.alive?
          invoke_service(name)
          @cond.wait
        end
      end
    end

unregist(name) click to toggle source

                   # File drb/extservm.rb, line 55
    def unregist(name)
      synchronize do
        @servers.delete(name)
      end
    end