nonnative 1.1.0 → 1.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/nonnative/process/pool.rb +18 -8
- data/lib/nonnative/version.rb +1 -1
- data/lib/nonnative.rb +1 -0
- 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: 94fcc3a2a4b8de1151b3ddf4167a17f61cc37c76c5e13aa8f149d6bcf3936202
|
4
|
+
data.tar.gz: 11830a63386ff946a95dc43147002aa0ffd40a7905d67077f065d61d1b9bef1b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 390aca473034cbe91730e94a68e4ee20c7e1ace387fd4023f4cca947f7e1c1a4c00e9569fc3409b752d3ee6b2e5e44c058fd88cb4c20a29d9996daea01881bfa
|
7
|
+
data.tar.gz: b038c7d147f724fb8cf220e70eb1c08470d1c61980e304ea3283ac2eedbda628ae1a001bbb1427113b73c71c932b334b64bf38c3f5d27f876ae95e900d97c901
|
data/Gemfile.lock
CHANGED
@@ -8,17 +8,11 @@ module Nonnative
|
|
8
8
|
end
|
9
9
|
|
10
10
|
def start(&block)
|
11
|
-
|
12
|
-
pos = processes.map { |_, p| Thread.new { p.open? } }.map(&:value)
|
13
|
-
|
14
|
-
yield_results(prs, pos, &block)
|
11
|
+
process_all(:start, :open?, &block)
|
15
12
|
end
|
16
13
|
|
17
14
|
def stop(&block)
|
18
|
-
|
19
|
-
pos = processes.map { |_, p| Thread.new { p.closed? } }.map(&:value)
|
20
|
-
|
21
|
-
yield_results(prs, pos, &block)
|
15
|
+
process_all(:stop, :closed?, &block)
|
22
16
|
end
|
23
17
|
|
24
18
|
private
|
@@ -31,6 +25,22 @@ module Nonnative
|
|
31
25
|
end
|
32
26
|
end
|
33
27
|
|
28
|
+
def process_all(pr_method, po_method, &block)
|
29
|
+
prs = []
|
30
|
+
ths = []
|
31
|
+
|
32
|
+
processes.each do |pr, po|
|
33
|
+
prs << pr.send(pr_method)
|
34
|
+
ths << Thread.new { po.send(po_method) }
|
35
|
+
end
|
36
|
+
|
37
|
+
ThreadsWait.all_waits(*ths)
|
38
|
+
|
39
|
+
pos = ths.map(&:value)
|
40
|
+
|
41
|
+
yield_results(prs, pos, &block)
|
42
|
+
end
|
43
|
+
|
34
44
|
def yield_results(prs, pos)
|
35
45
|
prs.zip(pos).each do |pid, result|
|
36
46
|
yield pid, result
|
data/lib/nonnative/version.rb
CHANGED
data/lib/nonnative.rb
CHANGED