比如有个 py 脚本是输出 1,现在想在不中断程序的情况下输出 1 和 2,除了开个线程一直与数据库连接或者一直监控配置文件内容有无改变之外?各位巨佬还有其他的方式吗?
|
so1nSep 18, 2020
1
如果你固定只有输出 1 还有输出 1 和 2 两种模式 可以用信号
|
|
crclzSep 18, 2020
2
数据库(拉)或消息队列(推)是标准解决方案
|
|
luckyrayyySep 18, 2020
5
不太懂你的问题,Python 有 nio 嘛?
|
|
6
@luckyrayyy 就是在不中断程序的情况下怎么修改程序中的一个变量...
|
|
luckyrayyySep 18, 2020
7
@taomujian 已经在运行的程序?是指动态加载、热部署之类的嘛
|
|
neoblackcapSep 18, 2020
8
不改程序几乎是不可能的,能改程序的话,无非就是通讯的问题。那么就会变成 rpc 的选择
你可以选择 grpc, brpc 等工具建立通讯。也可以用 mysql, redis 等数据库进行通讯,也可以用 rabbitmq 之类的建立通讯。方法太多 |
|
9
@luckyrayyy 不是,就是一个普通执行的程序
|
|
SingeeKingSep 18, 2020 via iPhone
10
inotify
|
|
tmackanSep 18, 2020
11
程序在不变的情况下,你要改变输出,只能改变输入啊
|
|
tmackanSep 18, 2020
12
你的使用场景描述不够清晰,如果输入是从 redis 获取的,那你可以去改变 redis 的数据
如果你是在程序中设置的 x=1,这种改成 x=2 ??不可能 |
|
superrichmanSep 18, 2020 via iPhone
13
你是想直接修改内存吗?
|
|
laike9mSep 19, 2020
14
不是。。你就不能开个 server 么
|
|
15
@superrichman 不想。。。
|