2017-09-24 108 views
0

我有一个python线程的基本问题。我可以使用单个线程来执行多个功能而无需链接功能吗?

当我看到例子,我明白线程需要一个函数来执行。 我可以使用单个线程以串行方式执行多个功能吗?

如果是这样,除了从当前调用下一个函数以外的任何其他方式?

像任何方式我可以通过'n'函数我需要连续执行初始本身,而不是从每个函数链接?

+0

通过,其中包装膜函数,当然需要你的'n'函数。任何你不想*的方法? –

回答

0

如果你只是想在一个线程中执行的功能列表:

funcs = [ 
    myfunc1, 
    myfunc2, 
    # ... 
] 

def thread_func(): 
    for f in funcs: 
     f(arg1, arg2) 

注意,功能都必须接受相同的参数集。

+0

我正在调用这样的线程= Thread(target = sample,kwargs = v2) – syam

+0

看着我是否可以连续地用一个线程完成我所有的功能。我的整个系统包含10个线程,每个服务器和每个线程都需要连续执行一些功能。这就是我正在寻找 – syam

0

显然是的!

假设你希望得到一个号码,并添加5〜它
那么你要加2,并在森那时间同时打印,简单地做:

def plusfive(num): 
    print(num+5) 

def plustwo(num): 
    print(num+2) 
    plusfive(num) 

plustwo(34) 
+0

tnx的答案。但我不想链接函数,意味着从一个函数明确调用触发下一个函数 – syam

+0

然后你可以使用一个列表,并使用for循环工作。正如@Jonathon Reinhart所说 – bob

相关问题