rbgo 0.1.3 → 0.1.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/rbgo/select_chan.rb +6 -2
- data/lib/rbgo/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6e4b5afdd21d18724108ef4022a855b0954e01263e470ec36f448dd296dce2b5
|
4
|
+
data.tar.gz: 9e383518f8e84bf7087a320833f20295d6529e11d6cdbb1a78b7ba67079272f5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b28a60edb7593cbddf7b5e7d8fbed384f559d785800d3ad3975de6cd9927dfcde01a565e136a133b1351d29e8307fbe2fd5dab654b843328e748051ce20deb8a
|
7
|
+
data.tar.gz: db7001f93432fa60ee221aab6420638f65f6f786c389b62ad87e0d1d99f9d39bbe00441a68554c4a1fee7d4007759f87f48b61bf1453905947f3b2af0b5b917f
|
data/lib/rbgo/select_chan.rb
CHANGED
@@ -157,6 +157,7 @@ module Rbgo
|
|
157
157
|
|
158
158
|
def pop(nonblock = false)
|
159
159
|
resource = nil
|
160
|
+
ok = true
|
160
161
|
if closed?
|
161
162
|
return [nil, false]
|
162
163
|
end
|
@@ -178,6 +179,7 @@ module Rbgo
|
|
178
179
|
enq_cond.wait(deq_mutex)
|
179
180
|
end
|
180
181
|
resource = resource_array.first
|
182
|
+
ok = false if resource_array.empty?
|
181
183
|
resource_array.clear
|
182
184
|
self.have_deq_waiting_flag = false
|
183
185
|
deq_cond.signal
|
@@ -185,7 +187,7 @@ module Rbgo
|
|
185
187
|
deq_mutex.unlock
|
186
188
|
end
|
187
189
|
|
188
|
-
[resource,
|
190
|
+
[resource, ok]
|
189
191
|
end
|
190
192
|
|
191
193
|
def close
|
@@ -258,14 +260,16 @@ module Rbgo
|
|
258
260
|
|
259
261
|
def pop(nonblock = false)
|
260
262
|
res = nil
|
263
|
+
ok = true
|
261
264
|
begin
|
262
265
|
res = super(nonblock)
|
263
266
|
notify_writable_observers
|
264
267
|
res
|
265
268
|
rescue ThreadError
|
266
269
|
raise unless closed?
|
270
|
+
ok = false
|
267
271
|
end
|
268
|
-
[res,
|
272
|
+
[res, ok]
|
269
273
|
end
|
270
274
|
|
271
275
|
def clear
|
data/lib/rbgo/version.rb
CHANGED