barlume 0.0.1.rc.1 → 0.0.1.rc.2
Sign up to get free protection for your applications and to get access to all the features.
- data/barlume.gemspec +2 -1
- data/examples/echo.rb +78 -0
- data/examples/slowpokes.rb +75 -0
- data/lib/barlume/lanterna.rb +243 -65
- data/lib/barlume/lanterna/dpoll.rb +204 -0
- data/lib/barlume/lanterna/epoll.rb +98 -70
- data/lib/barlume/lanterna/{utils.rb → helpers.rb} +6 -3
- data/lib/barlume/lanterna/kqueue.rb +88 -101
- data/lib/barlume/lanterna/poll.rb +67 -66
- data/lib/barlume/lanterna/port.rb +211 -0
- data/lib/barlume/lanterna/select.rb +22 -44
- data/lib/barlume/lucciola.rb +221 -10
- data/lib/barlume/version.rb +1 -1
- data/test/benchmark.client.rb +17 -0
- data/test/benchmark.server.rb +35 -0
- data/test/flood.js +28 -0
- metadata +30 -5
- data/examples/test.rb +0 -27
data/examples/test.rb
DELETED
@@ -1,27 +0,0 @@
|
|
1
|
-
#! /usr/bin/env ruby
|
2
|
-
require 'barlume'
|
3
|
-
require 'socket'
|
4
|
-
|
5
|
-
lantern = Barlume::Lanterna.best
|
6
|
-
server = TCPServer.new 43215
|
7
|
-
clients = []
|
8
|
-
|
9
|
-
puts "Using #{lantern.name}..."
|
10
|
-
|
11
|
-
lantern << server
|
12
|
-
|
13
|
-
loop do
|
14
|
-
lantern.readable.each {|lucciola|
|
15
|
-
if lucciola == server
|
16
|
-
server.accept.tap {|client|
|
17
|
-
clients.push(lantern.add(client))
|
18
|
-
}
|
19
|
-
else
|
20
|
-
puts lucciola.readline rescue nil
|
21
|
-
|
22
|
-
if lucciola.closed?
|
23
|
-
clients.delete(lantern.remove(lucciola))
|
24
|
-
end
|
25
|
-
end
|
26
|
-
}
|
27
|
-
end
|