Python AttributeError: el objeto no tiene atributo

Tengo una clase MyThread. En eso tengo una muestra de método. Estoy intentando ejecutarlo desde el mismo contexto de objeto. Por favor, eche un vistazo al código:

class myThread (threading.Thread):
    def __init__(self, threadID, name, counter, redisOpsObj):
        threading.Thread.__init__(self)
        self.threadID = threadID
        self.name = name
        self.counter = counter
        self.redisOpsObj = redisOpsObj

    def stop(self):
        self.kill_received = True

    def sample(self):
        print "Hello"

    def run(self):
        time.sleep(0.1)
        print "\n Starting " + self.name
        self.sample()

Parece muy simple no es así. Pero cuando lo ejecuto me sale este error.

AttributeError: 'myThread' object has no attribute 'sample' Ahora tengo ese método, ahí mismo. ¿Así que qué hay de malo? Por favor ayuda

Edit: Este es el stacktrace

Starting Thread-0

Starting Thread-1
Exception in thread Thread-0:
Traceback (most recent call last):
File "/usr/lib/python2.6/threading.py", line 525, in __bootstrap_inner
self.run()
File "./redisQueueProcessor.py", line 51, in run
self.sample()
AttributeError: 'myThread' object has no attribute 'sample'

Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python2.6/threading.py", line 525, in __bootstrap_inner
self.run()
File "./redisQueueProcessor.py", line 51, in run
self.sample()
AttributeError: 'myThread' object has no attribute 'sample'

Lo estoy llamando asi

arThreads = []
maxThreads = 2;

for i in range( maxThreads ):
    redisOpsObj = redisOps()
    arThreads.append( myThread(i, "Thread-"+str(i), 10, redisOpsObj) )

Lo siento, no puedo publicar código de clase redisOps. Pero puedo asegurarte que funciona bien

Respuestas a la pregunta(7)

Su respuesta a la pregunta