2

是否有可能有一些函数在函数中的每条指令上运行一个计数器,并且如果达到一个数字会做一些行为?

解释一下,如果一个函数最终占用了虚拟机中一定数量的字节码指令,我希望能够引发异常。因此,如果有人创建了一个列表推导式,它会产生一个无限循环,或者创建一个无限 while 循环,它会提前强制中断。

这可以在 Python 中完成吗?

4

1 回答 1

1

我对此表示怀疑。通常,唯一可靠的方法是在单独的进程中运行不受信任的代码,并适当地沙盒。

考虑一下如果不受信任的代码获得了一些关键资源(例如锁),然后因为花费太长时间而被杀死,会发生什么情况。如果有人试图获取相同的锁,整个过程将陷入僵局。

于 2013-03-06T19:40:25.617 回答