Raspberry Piのpythonでos.fork()ができたので備忘録
なぜか、pythonでos.fork()の記事が少なかったので備忘録として記載します。
当方のRaspberry Piでは現在のところpython3.4.2です。
ソースコードは「Raspberry piに特定のUSB機器を差し込むと電源を落とすデーモンをPythonで作る」を参考にしました。このソースコードでは親プロセスを終了させるようになっていますが、当方のソースコードでは親プロセスと子プロセスが同時に動くようになっています。
ソースコードは、以下のとおりです。親プロセスで5秒毎に「5sec」を5回標準出力し、子プロセスで1秒毎に25回「1sec」を標準出力するものです。
当方のRaspberry Piでは現在のところpython3.4.2です。
ソースコードは「Raspberry piに特定のUSB機器を差し込むと電源を落とすデーモンをPythonで作る」を参考にしました。このソースコードでは親プロセスを終了させるようになっていますが、当方のソースコードでは親プロセスと子プロセスが同時に動くようになっています。
ソースコードは、以下のとおりです。親プロセスで5秒毎に「5sec」を5回標準出力し、子プロセスで1秒毎に25回「1sec」を標準出力するものです。
ファイル名「fork01.py」
#!/usr/bin/pythonimport osimport timedef createDaemon():pid = os.fork()if pid > 0:#親プロセス 5秒毎に標準出力にプリントfor i in range(5):time.sleep(5)print("5sec")
if pid == 0:#子プロセス 1秒毎に標準出力にプリントfor j in range(25):time.sleep(1)print("1sec")if __name__ == '__main__':createDaemon()
実行はLXterminal(端末)から行います。フォルダーは適当なところに入れて実行もfork01.pyのあるフォルダーで行ってください。
$ python3 fork01.py1sec1sec1sec1sec5sec1sec1sec1sec1sec1sec5sec1sec1sec1sec1sec1sec5sec1sec1sec1sec1sec1sec5sec1sec1sec1sec1sec1sec5sec1sec
が出力されます。
« 面主主義はいかが? | トップページ | Raspberry Piのpythonでmultiprocessingから子プロセス生成し共有メモリが使えたので備忘録 »
「パソコン・インターネット」カテゴリの記事
- logicool M720 Triathlon マルチデバイスマウスが故障(2022.08.20)
- UbuntuのFirefoxだと雑音が入る(未解決)(2022.02.13)
- イントロンのブログが60,000カウントを達成(2022.01.13)
- GrovePi+をRaspberry Pi 4に導入してみた(上手くゆかなかった)(2021.12.26)
- Raspberry Pi 4でVLCメディアプレイヤー起動時にフリーズがなぜか解消(2021.12.20)
« 面主主義はいかが? | トップページ | Raspberry Piのpythonでmultiprocessingから子プロセス生成し共有メモリが使えたので備忘録 »


コメント