質問編集履歴

1

「やってほしいことだけを記載した丸投げの質問」だったので、「調査したこと・試したこと」を記入した

2023/03/01 05:48

投稿

knob
knob

スコア1

test CHANGED
File without changes
test CHANGED
@@ -3,7 +3,9 @@
3
3
  通常の場合、BにAをimportするなどして使用しますが、開発段階でBを何度も起動したり終了したりを繰り返す場合、Aの起動時間のせいでいちいちBの起動時間が遅くなって効率が悪くなります。
4
4
  そこで、Aを常駐させておいて、Bが処理したい任意のタイミングでAにその変数を投げ、結果をBに返すなどできれば効率が上がると考えました。
5
5
 
6
+ **調査したこと・試したこと**
6
- かし実行中の2つのpythonプログラム間で変数共有すスマートな方法がわかりませんでした
7
+ 1. threadingやmultiprocessingについて調べてみまたがこれらは1つpythonプログラム上での並列処理についてのものだと解釈しました。同時に動いている必要のある2つのpythonプログラム間でのデータのやり取りしたいと考えていので、この方法では不可能だと解釈まし(間違っていたら教えてください)
7
- 実行中のプログラム間でのデータのやり取りすることは、localhost内でソケット通信することによって実現はできたのですが、これでは変数が2倍になってしまってちょっとリソースがもったいない気がします。(しかもタイムアウトしてしまいますし。。。)
8
+ 2. 実行中のプログラム間でのデータのやり取りすることは、localhost内でソケット通信することによって実現はできたのですが、これでは変数が2倍になってしまってちょっとリソースがもったいない気がします。(しかもタイムアウトしてしまいますし。。。)ちゃんと動いているときには、動作自体に問題はなかったので、他にいい方法がなければこの方法を使おうと考えています
8
9
 
10
+ **実現したいこと**
9
11
  例えば、AをPID xxx で実行するように指定して、Bのプログラム内ではPID xxx に向けてデータを飛ばすと結果が返ってくるようなことはできますか?