2017-05-23 18 views
0

Flaskサーバーと同時に動作する2つの関数を起動することは可能でしょうか?私はfunction_2をトリガーした後にfunction_1を起動し、両方の機能を同時に実行する必要があります。出来ますか?FlaskマルチスレッドとPython

def function_1(): 
    yield "start_function_2" 
    counter = 0 
    while True: 
     counter += 1 
     print counter 


def function_2(): 
    second_counter = 0 
    while True: 
     second_counter += 1 
     print second_counter 

def main(): 
    return render_template("index.html") 

@app.route("/start_functions", methods=["POST"]) 
def start_functions(): 
    data = request.data 
    if request.method == "POST": 
     for i in function_1(data): 
      if (i == "start_function_2"): 
       function_2() 

if __name__ == "__main__": 
    app.run(dhost="0.0.0.0", port=port) 

答えて

0

はいできます。 threadingモジュールをインポートするだけです。

import threading 

def function1(): 
    # your code here 

def function2(): 
    # your code here 

あなたはこのようなスレッドを起動します。

threading.Thread(target=function1).start() 
threading.Thread(target=function2).start() 

どちらがあなたが更なる説明のために素敵なチュートリアルover thereを見つけることができます

同時に生きる:)

関連する問題