socketcake 0.1.8 → 0.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/socketcake.rb +9 -8
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 048ce323dee18165ffa95e72addf0cedccc9fbd8
4
- data.tar.gz: 87e642d829a75585e51c5eaed3c33aaa070325f2
3
+ metadata.gz: f563d941d7fa84288d089731cfceba3868c29ea1
4
+ data.tar.gz: 4a3a66c62f1eb69ba5c7217c06ecb78acf99a977
5
5
  SHA512:
6
- metadata.gz: 79b784822ecbf6057e0c041fcde6396102bf0975d4a31b093f0dac9dcf4df9de2b6b19d5e06bf7b980766e063edfb575ad1f7e98f4ba5983bc343dd127bf1fea
7
- data.tar.gz: e9e3419c3a9b957fd195cd26b82b69eeaf4fd6935803fbe02898d051faeeb33e66f44fedc92e337d51add925d3d0a3522deec6eb2163ea560aa0a9953e94edee
6
+ metadata.gz: c58b0b60e858da807e08e59a1cbb3e68b2dbdfd1a12660bfa37eff2df84bff6b7028e713c07780e095e7f7f49295e5e1637671d742924fd60993602782386d32
7
+ data.tar.gz: 968d5e5aff76645e9eddb4ed08e838edceca7e85a2c86ddb74a5970863a53c14c2b8a691083dbd4352a8259195b6190801d317f2aa3e19fffe06d5b0f0b70a50
data/lib/socketcake.rb CHANGED
@@ -9,15 +9,16 @@ class SocketCake
9
9
  @storage = Hash.new
10
10
  end
11
11
 
12
- def roll
13
- EM.run do
14
- create_sockets @task_list
15
- ObjectSpace.each_object(BaseSocket).each do |t|
16
- t.start {|data| @storage[t.class.to_s]=data}
17
- end
18
- EM.stop
19
- end
12
+ def roll
13
+ EM.run do
14
+ create_sockets @task_list
15
+ socks = ObjectSpace.each_object(BaseSocket)
16
+ EM.stop if socks.all? do |t|
17
+ t.start { |data| @storage[t.class.to_s]=data }
18
+ socks.none?
19
+ end
20
20
  end
21
+ end
21
22
 
22
23
 
23
24
  private
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: socketcake
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.1.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Timofey Poletaev