我一直在研究如何为Python
subprocess
提供它自己的
time
和
memory
。
问题是,
resource.setrlimit
为主进程设置了限制,子进程使用该限制。当超过极限时,它实际上也会杀死进程。
我在这里试图实现的总体目标是
subprocess.check_output(['docker exec -it cpp_compiler sh -c "g++ -o Test1 prog1.cpp && ./Test1 < input.txt"']
,这条线路的资源不应超过分配。
是否有办法在Python中实现这一目标?
我想解决的问题是试图为用户提交的
CPU time
和
memory
代码分配限制。替换代码8】的代码最终将在docker容器上运行,以达到沙盒的目的,但希望对其使用的资源有所限制。
如果有人能就问题和潜在的解决方案或上述代码的修正提供意见,这将是非常有帮助的。