回答編集履歴

3

言葉遣いなど

2023/12/16 07:04

投稿

quickquip
quickquip

スコア11299

test CHANGED
@@ -1,8 +1,8 @@
1
- reloaderがTrueだとファイルの更新のたびにアプリが再起動されますよね。
1
+ use_reloaderがTrueだとファイルの更新のたびにアプリが再起動されますよね。
2
2
 
3
- つまりreloaderがTrueの場合、メインプロセスが`app.run(debug=True)`まで進んだあと、「ファイルの更新を監視して必要に応じてWebアプリを停止・再起動させる」監視役のプロセス(*)が稼働して「Webアプリのプロセス」の死活監視を始めるはずで、そして「死活監視をするプロセス」が「Webアプリのプロセス」を起動するはずです。
3
+ つまりreloaderを使う場合、メインプロセスが`app.run(debug=True)`まで進んだあと、「ファイルの更新を監視して必要に応じてWebアプリを停止・再起動させる」監視役のプロセス(*)が稼働して「Webアプリのプロセス」の停止・再起動の制御を始めるはずで、そして「Webアプリ制御するプロセス」が「Webアプリのプロセス」を起動するはずです。
4
- 実際、質問にある通り、reloaderがTrueだとモジュールの初期化処理は2回実行されます。
4
+ 実際、質問にある通り、use_reloaderがTrueだとモジュールの初期化処理は2回実行されます。
5
5
 
6
- reloaderのTrueの場合、そもそも「Webアプリのプロセス」は何度も何度も再起動されるものです。Webアプリ初期化処理(=モジュールの地の文)もその都度実行されるのが普通です。というより**そうでないと困ります**。それを特に不思議に思ったことはないです。
6
+ reloaderを使うなら、そもそも「Webアプリのプロセス」は何度も何度も再起動されす。Webアプリが再起動される時、初期化処理(=モジュールの地の文)も都度実行されるのが普通です。というより**そうでないと困ります**。それを特に不思議に思ったことはないです。
7
7
 
8
8
  (*)この"プロセス"は厳密な意味でなくてふんわりと使っています。実体がOS用語のプロセスかもしれないし、スレッドかもしれないし、特にこだわらず"ある種のイベント待ちループを伴った処理"程度で使ってます。

2

些細

2023/12/16 05:24

投稿

quickquip
quickquip

スコア11299

test CHANGED
@@ -3,6 +3,6 @@
3
3
  つまりreloaderがTrueの場合、メインプロセスが`app.run(debug=True)`まで進んだあと、「ファイルの更新を監視して必要に応じてWebアプリを停止・再起動させる」監視役のプロセス(*)が稼働して「Webアプリのプロセス」の死活監視を始めるはずで、そして「死活監視をするプロセス」が「Webアプリのプロセス」を起動するはずです。
4
4
  実際、質問にある通り、reloaderがTrueだとモジュールの初期化処理は2回実行されます。
5
5
 
6
- reloaderのTrueの場合、そもそも「Webアプリのプロセス」は何度も何度も再起動されるものです。Webアプリの初期化処理(=モジュールの地の文)もその都度実行されるのが普通というより**そうでないと困ります**。それを特に不思議に思ったことはないです。
6
+ reloaderのTrueの場合、そもそも「Webアプリのプロセス」は何度も何度も再起動されるものです。Webアプリの初期化処理(=モジュールの地の文)もその都度実行されるのが普通です。というより**そうでないと困ります**。それを特に不思議に思ったことはないです。
7
7
 
8
8
  (*)この"プロセス"は厳密な意味でなくてふんわりと使っています。実体がOS用語のプロセスかもしれないし、スレッドかもしれないし、特にこだわらず"ある種のイベント待ちループを伴った処理"程度で使ってます。

1

抜けていた部分があった

2023/12/16 05:23

投稿

quickquip
quickquip

スコア11299

test CHANGED
@@ -1,6 +1,6 @@
1
1
  reloaderがTrueだとファイルの更新のたびにアプリが再起動されますよね。
2
2
 
3
- つまりreloaderがTrueの場合、メインプロセスが`app.run(debug=True)`まで進んだあと、「ファイルの更新を監視して必要に応じてWebアプリを停止・再起動させる」監視役のプロセス(*)が稼働して、それが「Webアプリのプロセス」の死活監視をするはずです。
3
+ つまりreloaderがTrueの場合、メインプロセスが`app.run(debug=True)`まで進んだあと、「ファイルの更新を監視して必要に応じてWebアプリを停止・再起動させる」監視役のプロセス(*)が稼働して「Webアプリのプロセス」の死活監視を始めるはずで、そして「死活監視をするプロセス」が「Webアプリのプロセス」を起動するはずです。
4
4
  実際、質問にある通り、reloaderがTrueだとモジュールの初期化処理は2回実行されます。
5
5
 
6
6
  reloaderのTrueの場合、そもそも「Webアプリのプロセス」は何度も何度も再起動されるものです。Webアプリの初期化処理(=モジュールの地の文)もその都度実行されるのが普通、というより**そうでないと困ります**。それを特に不思議に思ったことはないです。