2017-06-21 4 views
0

を閉じることがカント:https://github.com/FreeOpcUa/FreeOPCUaスレッド:サーバーは、私は現在、このOPC UAの実装で働いている

私の問題は、私が実行しているサーバーを停止カントということです。すべての例でも、server.stop()を呼び出した後、Pythonシェルは開いたままです。

あなたは私がサーバーを停止してスレッドを殺す方法を知っていますか? ありがとう!

答えて

0

私はopcuaについて何も知らないので、多分私は間違っていますが、あなたはPythonでスレッドを殺すことはできません。すべてのスレッドが正常に終了するまで待つ必要があります。スレッドを停止するには、定期的に停止フラグをチェックする必要があります。例えば、ここで見てください:Is there any way to kill a Thread in Python?

0

私もfreeopcuaを使用していますし、server.stop()は間違ってしまう傾向があります。例の中で

私は例では問題を引き起こしている埋め込みだと思います。これを引き起こしているのは埋め込みです。なぜ彼らはそれを追加したのかわかっていません...そうでなければPythonスクリプトが終了するようにサーバーを稼働させ続けることはわかります。

私は自分自身がサーバ側でユーザの入力を待つことによって、これを行うユーザーが入力した場合、サーバは

server.start() 
input("enter to stop...\n") 
server.stop() 

を停止します、これは私のサーバー側でそれはクリーンな方法ではありませんされているが、確実に埋め込みが何でありますあなたにも問題を引き起こしています。また、埋め込み()関数を使用せずにサーバを実行し続ける可能性のある解決策がたくさんあります

+0

私がテストファイルでサーバを起動した場合、サーバを起動した場合はサーバを独立したスクリプトとして実行します。私のテストが終わった後も問題なく、そこにstop()を置くことができます。私はサーバを閉じることができます –

関連する問題