Class: ASIR::Transport::Thread
- Inherits:
-
Local
- Object
- ASIR::Transport
- Local
- ASIR::Transport::Thread
- Defined in:
- lib/asir/transport/thread.rb
Overview
!SLIDE Thread Transport
Send one-way Message to a Thread.
Constant Summary
Constants included from ASIR::ThreadVariable
ASIR::ThreadVariable::DEBUG, ASIR::ThreadVariable::EMPTY_HASH, ASIR::ThreadVariable::SETTER
Instance Attribute Summary collapse
-
#after_thread_new ⇒ Object
Callback: call(self, MessageState, thr).
-
#thread_class ⇒ Object
Any object that responds to .new(&blk).
Attributes inherited from ASIR::Transport
#after_invoke_message, #after_receive_message, #before_send_message, #coder_needs_result_message, #decoder, #encoder, #invoker, #message_count, #needs_message_identifier, #needs_message_timestamp, #on_exception, #on_result_exception, #one_way, #running, #verbose
Attributes included from Log
Instance Method Summary collapse
-
#_receive_result(state) ⇒ Object
one-way; no Result.
- #_send_message(state) ⇒ Object
-
#_send_result(state) ⇒ Object
one-way; no Result.
-
#initialize(*args) ⇒ Thread
constructor
A new instance of Thread.
-
#receive_result(state) ⇒ Object
one-may; no Result.
Methods inherited from ASIR::Transport
#_after_invoke_message, #_subclass_responsibility, #invoke_message!, #needs_message_identifier?, #needs_message_timestamp?, #receive_message, #send_message, #send_result, #serve_message!, #stop!, #with_force_stop!, #with_server_signals!
Methods included from Log
#_log, #_log_enabled=, #_log_enabled?, #_log_format, #_log_result, enabled, enabled=, included
Methods included from AdditionalData
#[], #[]=, #_additional_data, #additional_data, #additional_data!, #additional_data=, included
Methods included from Message::Delay
#relative_message_delay!, #wait_for_delay!
Methods included from ASIR::ThreadVariable
Constructor Details
#initialize(*args) ⇒ Thread
Returns a new instance of Thread.
18 19 20 21 |
# File 'lib/asir/transport/thread.rb', line 18 def initialize *args @thread_class = ::Thread @one_way = true; super end |
Instance Attribute Details
#after_thread_new ⇒ Object
Callback: call(self, MessageState, thr).
16 17 18 |
# File 'lib/asir/transport/thread.rb', line 16 def after_thread_new @after_thread_new end |
#thread_class ⇒ Object
Any object that responds to .new(&blk). Defaults to ::Thread.
13 14 15 |
# File 'lib/asir/transport/thread.rb', line 13 def thread_class @thread_class end |
Instance Method Details
#_receive_result(state) ⇒ Object
one-way; no Result
34 35 |
# File 'lib/asir/transport/thread.rb', line 34 def _receive_result state end |
#_send_message(state) ⇒ Object
23 24 25 26 27 28 29 30 31 |
# File 'lib/asir/transport/thread.rb', line 23 def state thr = thread_class.new do super send_result(state) end state.in_stream = thr @after_thread_new.call(self, state, thr) if @after_thread_new thr end |
#_send_result(state) ⇒ Object
one-way; no Result
38 39 |
# File 'lib/asir/transport/thread.rb', line 38 def _send_result state end |
#receive_result(state) ⇒ Object
one-may; no Result
42 43 |
# File 'lib/asir/transport/thread.rb', line 42 def receive_result state end |