私はかなり基本的な割り当てを持っていますが、私の主なスレッドが完了するまでに他のすべてのスレッドを待つという問題があります。ジョインを使用してスレッドが終了するのを待っています。かなり基本的です
このコードは大したことはありませんが、スレッド化のためのものです。ここで
は私のコードです:
import time
from threading import Thread
def printNumbers(lowEnd, highEnd):
while(lowEnd <= highEnd):
print(repr(lowEnd))
lowEnd += 1
countTo = 100000
#Test using 1 thread.
startSingleThread = time.clock()
printNumbers(0,countTo)
elapsedSingleThread = (time.clock() - startSingleThread)
#Test using 10 threads
numberOfThreads = 10
countAmountPerThread = countTo/numberOfThreads
startTenThread = time.clock()
for i in range(numberOfThreads):
threadLowEnd = i*countAmountPerThread
threadHighEnd = (i+1)*countAmountPerThread
t = Thread(target=printNumbers, args=(threadLowEnd,threadHighEnd,))
t.start()
#Join all existing threads to main thread.
for thread in threading.enumerate():
if thread is not threading.currentThread():
thread.join()
elapsedTenThread = (time.clock() - startTenThread)
print("Time for 1 thread: " + repr(elapsedSingleThread))
print("time for 10 threads: " + repr(elapsedTenThread))
.... HAHA、今私は隅に恥で私の頭をハングアップします。ありがとう。良いものを持っている! – PFranchise
出力をファイルに保存すると(たとえば、 'python3 test.py> out.txt'、または' less'にパイプすると)、端末上で例外が表示されます。 –
ありがとう!私はそれを念頭に置いておきます。 Btw、あなたはかなり素晴らしいマシンを持っている必要があります。私は私のことが速かったと思っていましたが、あなたはこれを吹き飛ばしました。 – PFranchise