Moved Singleton.instance to get rid of redefinition
This commit is contained in:
parent
951f80f2dd
commit
2d1728b9ce
@ -120,6 +120,15 @@ module Singleton
|
|||||||
instance
|
instance
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def instance # :nodoc:
|
||||||
|
return @singleton__instance__ if @singleton__instance__
|
||||||
|
@singleton__mutex__.synchronize {
|
||||||
|
return @singleton__instance__ if @singleton__instance__
|
||||||
|
@singleton__instance__ = new()
|
||||||
|
}
|
||||||
|
@singleton__instance__
|
||||||
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
def inherited(sub_klass)
|
def inherited(sub_klass)
|
||||||
@ -134,14 +143,6 @@ module Singleton
|
|||||||
@singleton__instance__ = nil
|
@singleton__instance__ = nil
|
||||||
@singleton__mutex__ = Thread::Mutex.new
|
@singleton__mutex__ = Thread::Mutex.new
|
||||||
}
|
}
|
||||||
def klass.instance # :nodoc:
|
|
||||||
return @singleton__instance__ if @singleton__instance__
|
|
||||||
@singleton__mutex__.synchronize {
|
|
||||||
return @singleton__instance__ if @singleton__instance__
|
|
||||||
@singleton__instance__ = new()
|
|
||||||
}
|
|
||||||
@singleton__instance__
|
|
||||||
end
|
|
||||||
klass
|
klass
|
||||||
end
|
end
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user