Python 程序后台运行,如何写在控制台与他交互啊。怎么自定义命令

Python 程序后台运行,如何写在控制台与他交互啊。怎么自定义命令,第1张

Python 程序后台运行,如何写在控制台与他交互啊。怎么自定义命令,第2张

写一个定时程序,线程始终后台执行。然后通过控制台或者 cmd 输入命令,添加新的定时任务。 这类的 python 程序都是通过什么写的啊

请教以下各位大佬。

----------------------- 以下是精选回复-----------------------

答:你是需要这个?

https://python-rq.org/
答:很简单,原教旨主义的程序是面向过程的,也就是逐条执行指令。你想要在这个基础上加上外部互动的功能,那你就需要额外再写一个能接收输入输出的过程,它可以以单独的一个线程或进程的形式存在。
答:用一个文件或数据库保存任务配置就行了,A 定时读取配置执行,B 添加任务的时候往配置写
答:一个进程轮询执行,一个进程接收数据
答:配置文件,不是定时读取,用 inotify 监听文件变化,Python 有 SDK 的。
如果不希望加 inotify 依赖的话,Python 监听 HUP 信号,收到时重载配置。手动重载用 `kill -HUP [$pid]`。如果用 systemd 管理,加一行 `ExecReload=/bin/kill -HUP $MAINPID`。
以上都在说 Linux ,Windows 的话,我就不清楚了,我不太会用 Windows.
答:# 10
以上说用配置文件是比较简便的方法,如果要比较复杂的交互,还是按楼上的说法开个线程接收数据,asyncio 开个 Task 什么的。
docker 默认是用的 Unix Socket 通信,也可以开 http 。
答:IPC 的手段很多啊, 你说的 sys.stdin 一般就够了

复杂点的最近用了下 Unix domain socket, 那高并发杠杠的, 尤其是底层 asyncio 都包好了变成 Stream 的 Reader 和 Writer, 写啥都跟写 Pipe 一样.

或者你监控一个文件夹里出现新的 py 文件就导入它?

或者开个 HTTP

反正思路很多看你愿意怎么玩了, 不过看你的意思感情就是个随时拔插的一个 systemd / supervisor 啊... 那还不如丢一堆 alias 在 tmux 里随便折腾呢
答:xml/jsonrpc

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » Python 程序后台运行,如何写在控制台与他交互啊。怎么自定义命令

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情