opee 1.0.2 → 1.0.3
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +4 -2
- data/lib/opee/env.rb +14 -0
- data/lib/opee/log.rb +1 -0
- data/lib/opee/queue.rb +1 -1
- data/lib/opee/version.rb +1 -1
- metadata +2 -2
data/README.md
CHANGED
@@ -24,9 +24,11 @@ Give it a try. Any comments, thoughts, or suggestions are welcome.
|
|
24
24
|
|
25
25
|
## <a name="release">Release Notes</a>
|
26
26
|
|
27
|
-
### Release 1.0.
|
27
|
+
### Release 1.0.3
|
28
28
|
|
29
|
-
- Added
|
29
|
+
- Added periodic status output to info mode.
|
30
|
+
|
31
|
+
- Set logger name.
|
30
32
|
|
31
33
|
# Plans and Notes
|
32
34
|
|
data/lib/opee/env.rb
CHANGED
@@ -206,10 +206,18 @@ module Opee
|
|
206
206
|
# Waits for all Actors to complete processing. The method only returns
|
207
207
|
# when all Actors indicate they are no longer busy.
|
208
208
|
def self.wait_finish()
|
209
|
+
next_time = Time.now + 2.0
|
209
210
|
@@finish_thread = Thread.current
|
210
211
|
@@actors.each { |a| a.wakeup() }
|
211
212
|
while busy?
|
212
213
|
sleep(0.2) # actors should wake up when queue is empty
|
214
|
+
if Logger::INFO >= @@log.severity
|
215
|
+
now = Time.now
|
216
|
+
if next_time <= now
|
217
|
+
log_status()
|
218
|
+
next_time = now + 2.0
|
219
|
+
end
|
220
|
+
end
|
213
221
|
end
|
214
222
|
end
|
215
223
|
|
@@ -234,5 +242,11 @@ module Opee
|
|
234
242
|
end
|
235
243
|
end
|
236
244
|
|
245
|
+
def self.log_status()
|
246
|
+
s = "\n %20s %5s %5s\n" % ['Actor Name', 'Q-cnt', 'busy?']
|
247
|
+
@@actors.each { |a| s << " %20s %5d %5s\n" % [a.name, a.queue_count(), a.busy?()] }
|
248
|
+
info(s)
|
249
|
+
end
|
250
|
+
|
237
251
|
end # Env
|
238
252
|
end # Opee
|
data/lib/opee/log.rb
CHANGED
@@ -58,6 +58,7 @@ module Opee
|
|
58
58
|
@logger.severity = options[:severity] if options.has_key?(:severity)
|
59
59
|
@formatter = options.fetch(:formatter, nil)
|
60
60
|
@logger.formatter = proc { |s,t,p,m| m }
|
61
|
+
@name = 'Logger' if @name.nil?
|
61
62
|
end
|
62
63
|
|
63
64
|
# Writes a message if the severity is high enough. This method is
|
data/lib/opee/queue.rb
CHANGED
@@ -79,7 +79,7 @@ module Opee
|
|
79
79
|
|
80
80
|
# Identifies a worker as available to process jobs when they become
|
81
81
|
# available. This method is executed asynchronously.
|
82
|
-
# @param [Actor] worker Actor that responds to the
|
82
|
+
# @param [Actor] worker Actor that responds to the method to be called
|
83
83
|
def ready(worker)
|
84
84
|
if @work_queue.empty?
|
85
85
|
@workers.insert(0, worker) unless @workers.include?(worker)
|
data/lib/opee/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: opee
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-06-12 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
14
|
description: ! 'An experimental Object-base Parallel Evaluation Environment. '
|
15
15
|
email: peter@ohler.com
|