Python
Thread
Kivy
RPi
終了

RPI上のPythonでKivyを終わらせる

RPI+PythonでKivyを動かしているとき、App.get_running_app().stop()で終わってくれない状況の話です。

主ループでClock eventを使い、sys.exit()を呼べば死んでくれるらしいが、KivyをThreadで動かしていて
sys.exit()が使えない場合どうするか。普通のThreadの終わらせ方のように、while flag: みたいにしたいが
Kivyは、buildメソッドをrunすると主ループがプログラマーには見えず、ループに細工できない。
Eventハンドリングのループに直接作用させて、

from kivy.base import EventLoop
...
EventLoop.exit()

で、消えてくれます。