123456789_123456789_123456789_123456789_123456789_

Module: Concurrent::SerialExecutorService

Relationships & Source Files
Extension / Inclusion / Inheritance Descendants
Included In:
Super Chains via Extension / Inclusion / Inheritance
Instance Chain:
Defined in: lib/concurrent-ruby/concurrent/executor/serial_executor_service.rb

Overview

Indicates that the including ExecutorService guarantees that all operations will occur in the order they are post and that no two operations may occur simultaneously. This module provides no functionality and provides no guarantees. That is the responsibility of the including class. This module exists solely to allow the including object to be interrogated for its serialization status.

Examples:

class Foo
  include Concurrent::SerialExecutor
end

foo = Foo.new

foo.is_a? Concurrent::ExecutorService #=> true
foo.is_a? Concurrent::SerialExecutor  #=> true
foo.serialized?                       #=> true

Constant Summary

Concern::Logging - Included

SEV_LABEL

Instance Attribute Summary

ExecutorService - Included

#can_overflow?

Does the task queue have a maximum size?

#serialized?

Does this executor guarantee serialization of its operations?

Instance Method Summary

ExecutorService - Included

#<<

Submit a task to the executor for asynchronous processing.

#post

Submit a task to the executor for asynchronous processing.

Concern::Logging - Included

#log

Logs through global_logger, it can be overridden by setting @logger.

Instance Attribute Details

#serialized?Boolean (readonly)

Note:

Always returns true

Does this executor guarantee serialization of its operations?

Returns:

  • (Boolean)

    True if the executor guarantees that all operations will be post in the order they are received and no two operations may occur simultaneously. Else false.

[ GitHub ]

  
# File 'lib/concurrent-ruby/concurrent/executor/serial_executor_service.rb', line 30

def serialized?
  true
end