threading.Thread()を使っていて、問題がでたので、質問させていただきます。
次のシンプルな、配列をforループさせてprintするスクリプトがあります。
worker()をそのまま実行すると、配列の0番目から順にprintされますが、
Thread(target=worker)で実行すると逆順に出力されます。
(ちなみに、配列をrange(5000)とかにすると、順番がぐちゃぐちゃになる場合もあります。(毎回確実ではない))

from threading import Thread

def worker():
    nums = [1,2,3,4,5,6,7,8,9,10,11]
    for n in nums:
        print n

# これは、printの順番は、1=>11
worker()


# これだと、printの順番が11=>1になってしまう
t = Thread(target=worker)
t.start()

何か設定に問題があるのでしょうか。
Thread特有の仕様でしょうか?

環境はwindows10, Python2.7です。
よろしくお願いいたします。