Class: Localjob::SysvAdapter
- Inherits:
-
Object
- Object
- Localjob::SysvAdapter
- Includes:
- SysVIPC
- Defined in:
- lib/localjob/sysv_adapter.rb
Instance Method Summary collapse
- #destroy ⇒ Object
-
#initialize(name) ⇒ SysvAdapter
constructor
A new instance of SysvAdapter.
- #mq ⇒ Object
- #receive ⇒ Object
- #send(message) ⇒ Object
- #size ⇒ Object
Constructor Details
#initialize(name) ⇒ SysvAdapter
14 15 16 |
# File 'lib/localjob/sysv_adapter.rb', line 14 def initialize(name) @filename = "/tmp/#{name}" end |
Instance Method Details
#destroy ⇒ Object
41 42 43 44 45 |
# File 'lib/localjob/sysv_adapter.rb', line 41 def destroy File.delete(@filename) @mq.rm @mq = nil end |
#mq ⇒ Object
18 19 20 21 22 23 24 25 26 27 |
# File 'lib/localjob/sysv_adapter.rb', line 18 def mq unless @mq File.open(@filename, "w") { } key = ftok(@filename, 0) @mq = MessageQueue.new(key, IPC_CREAT | 0600) end @mq end |
#receive ⇒ Object
29 30 31 |
# File 'lib/localjob/sysv_adapter.rb', line 29 def receive mq.receive(0, 8024) end |
#send(message) ⇒ Object
33 34 35 |
# File 'lib/localjob/sysv_adapter.rb', line 33 def send() mq.send(1, ) end |
#size ⇒ Object
37 38 39 |
# File 'lib/localjob/sysv_adapter.rb', line 37 def size mq.ipc_stat.msg_qnum end |