0

基本上我不知道我需要做什么来完成这个..

我有两个循环,每个循环将循环不同的持续时间:

import time

while True:
    print "Hello Matt"
    time.sleep(5)

然后是另一个循环:

import time

while True:
    print "Hello world"
    time.sleep(1)

我需要将两个循环都合并到一个程序中,并且两者都需要同时运行并独立处理数据,并且它们之间不需要共享数据。我想我正在寻找线程或多处理,但我不确定如何为这样的事情实现它。

4

2 回答 2

1

使用Thread足以满足您的目的:

import time
from threading import Thread

def foo():
    while True:
        print "Hello Matt"
        time.sleep(5)

def bar():
    while True:
        print "Hello world"
        time.sleep(1)

a = Thread(target=foo)
b = Thread(target=bar)
a.start()
b.start()
于 2013-03-06T01:52:57.310 回答
1

为此,您可以使用模块线程,如下所示:

import threading
import time

def f(n, str):     # define a function with the arguments n and str
    while True:
        print str
        time.sleep(n)

t1=threading.Thread(target=f, args=(1, "Hello world"))    # create the 1st thread
t1.start()                                                # start it

t2=threading.Thread(target=f, args=(5, "Hello Matt"))     # create the 2nd thread
t2.start()                                                # start it

参考。
http://docs.python.org/2/library/threading.html

于 2013-03-06T01:57:29.847 回答