aboutsummaryrefslogtreecommitdiff
path: root/lib/mauve/mauve_thread.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/mauve/mauve_thread.rb')
-rw-r--r--lib/mauve/mauve_thread.rb11
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/mauve/mauve_thread.rb b/lib/mauve/mauve_thread.rb
index 79e742a..1aa8619 100644
--- a/lib/mauve/mauve_thread.rb
+++ b/lib/mauve/mauve_thread.rb
@@ -6,6 +6,7 @@ module Mauve
class MauveThread
def initialize
+ @thread = nil
end
def logger
@@ -58,7 +59,7 @@ module Mauve
end
def frozen?
- @frozen and @thread.stop?
+ defined? @frozen and @frozen and @thread.stop?
end
def thaw
@@ -86,6 +87,10 @@ module Mauve
@thread.is_a?(Thread) and @thread.alive?
end
+ def stop?
+ @thread.is_a?(Thread) and @thread.stop?
+ end
+
def join(ok_exceptions=[])
@thread.join if @thread.is_a?(Thread)
end
@@ -94,6 +99,10 @@ module Mauve
@thread.raise(ex)
end
+ def backtrace
+ @thread.backtrace if @thread.is_a?(Thread)
+ end
+
def restart
self.stop
self.start