应当连续运行VS运行直到完成的过程的条款

问题描述

是否有一般的抽象计算机科学术语来表示:

  • 应该持续运行的进程(没有结束)

  • 应该运行到完成(结束)的过程

分别?

第一类的示例:Web服务器,OS守护进程。我还将在这里放置任何一般的交互式应用程序(游戏,浏览器,文字处理程序),因为除非给出(错误的)外部输入,否则该内容将永远运行。但是我不会在这里放置一个交互式应用程序,该程序被编程为在一定时间内结束自身,因为即使没有外部输入,该应用程序也会“自然结束”。

第二类的示例:一个脚本,该脚本从互联网上抓取一些数据并构建一个数据集,一个程序获取我的桌面屏幕快照并保存该程序,一个命令行实用程序对文件进行加密等。

我正在寻找可以根据过程结束(没有外部输入)还是最终陷入无限循环来区分过程的术语。但是我正在寻找可以在日常技术环境中使用的“实用”术语。

我可以想到诸如“有限”和“无限”过程之类的数学术语(不确定此类术语是否在任何地方使用),但是我怀疑它们是否会在日常行话中被采用和使用。

我无法想象有人说“哦,今天我们必须运行几个有限程序,并且必须对无限程序添加监视”。 (很遗憾,因为这些句子对我来说非常简洁明了!)

根据我所听到,阅读和使用的内容,术语“批处理作业”通常用于表示我所描述的第二类。但是我不知道会有一个广泛的术语来表示相反的类别。

此外,术语“批处理”有点重载,并且根据上下文和您所在的字段,可能会被“丰富”并具有其他含义。例如,如果您的上下文是“处理数据”,则可以使用“批处理”来表示以块而非一对一的方式处理数据的方式。在机器学习中,您可能有一个脚本可以“批处理模式”(一次处理N行)或“在线模式”(一次处理一行)训练模型。在这种情况下,可能很难将训练过程表示为“批处理作业”或“批处理流程”,因为这可能会使您困惑,是要说您的流程将要结束还是要批量处理数据?

表示“有限”类的另一个很好的候选人可能是“任务”。 “任务”传达的含义是“需要开始和完成的事情”。

但是在实践中,您可以找到用于“无限”事物的术语,例如在VSCode的监视任务中。在那种情况下,“任务”的含义扩展为“我可以按需开始的事情”,而对“可完成性”的关注就消失了。

最后,我喜欢Kubernetes的方法,为这两个类提供两个简单的单字术语:“部署”(对于应该永远运行的事物)和“作业”(对于应该完成的事物) ,但我觉得“部署”和“作业”遭受的负担甚至超过了“批处理”。

例如,“部署”已经在Kubernetes术语本身内部引起混淆,因为它可能被用作表示“开始某事”的动词。很多人可能会说“我部署此作业”或“我部署此部署”。对于刚接触Kubernetes的人来说,尝试理解Kubernetes的“部署”的概念,在同一句话中听到“部署”和“工作”可能会造成混淆。

用这个rather incomplete wikipedia page on "Job (computing)"来判断,“工作”一词似乎似乎是一个合适的词,它表示可以完成的事情。但是从UNIX的意义上讲,“工作”没有这种含义。而且我认为UNIX上的“作业”比其抽象的同义字(计算领域的“作业”)更为广泛。


您想提出什么建议吗?

还是您在技术环境中的日常生活中使用的术语?

您对这个主题有什么想法,您的结论是什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)