Module: LogCourier

Defined in:
lib/log-courier/version.rb,
lib/log-courier/client.rb,
lib/log-courier/server.rb,
lib/log-courier/protocol.rb,
lib/log-courier/client_tcp.rb,
lib/log-courier/server_tcp.rb,
lib/log-courier/event_queue.rb

Overview

This is a queue implementation dervied from SizedQueue, but with a timeout.

It is significantly faster than using SizedQueue wrapped in Timeout::timeout because it uses mutex.sleep, whereas Timeout::timeout actually starts another thread that waits and then raises exception or has to be stopped on exiting the block.

The majority of the code is taken from Ruby’s SizedQueue<Queue implementation.

Defined Under Namespace

Modules: Protocol Classes: Client, ClientTcp, ConnectionTcp, EventQueue, ExtendedTCPServer, PendingPayload, ProtocolError, Server, ServerTcp, ShutdownSignal, TimeoutError

Constant Summary collapse

MAJOR_VERSION =
2
MINOR_VERSION =
9
PATCH_VERSION =
1
VERSION =
'2.9.1'.freeze