Sha256: 082ba3d7c3e231420ea62b241f4cd17ad93729afb9406a4ced4b63fea5d97d9f

Contents?: true

Size: 387 Bytes

Versions: 98

Compression:

Stored size: 387 Bytes

Contents

# frozen_string_literal: true

require 'bundler/setup'
require 'polyphony'

X = 1_000_000

GC.disable

count = 0

pong = spin_loop do
  msg, ping = receive
  count += 1
  ping << 'pong'
end

ping = spin do
  X.times do
    pong << ['ping', Fiber.current]
    msg = receive
    count += 1
  end
end

t0 = Time.now
ping.await
dt = Time.now - t0
puts format('message rate: %d/s', (X / dt))

Version data entries

98 entries across 98 versions & 1 rubygems

Version Path
polyphony-1.6 examples/performance/messaging.rb
polyphony-1.5 examples/performance/messaging.rb
polyphony-1.4 examples/performance/messaging.rb
polyphony-1.3 examples/performance/messaging.rb
polyphony-1.2.1 examples/performance/messaging.rb
polyphony-1.2 examples/performance/messaging.rb
polyphony-1.1.1 examples/performance/messaging.rb
polyphony-1.1 examples/performance/messaging.rb
polyphony-1.0.2 examples/performance/messaging.rb
polyphony-1.0.1 examples/performance/messaging.rb
polyphony-1.0 examples/performance/messaging.rb
polyphony-0.99.6 examples/performance/messaging.rb
polyphony-0.99.5 examples/performance/messaging.rb
polyphony-0.99.4 examples/performance/messaging.rb
polyphony-0.99.3 examples/performance/messaging.rb
polyphony-0.99.2 examples/performance/messaging.rb
polyphony-0.99.1 examples/performance/messaging.rb
polyphony-0.99 examples/performance/messaging.rb
polyphony-0.98 examples/performance/messaging.rb
polyphony-0.97 examples/performance/messaging.rb