我想知道,如果How to select row in Mac in MC and cut one?
中有任何标志选项来限制运行时间,例如堆栈大小g++
和错误数量-stack_size = any_limit
。假设我想在-fmax-errors=n
之后暂停执行,那么除了添加20 seconds
循环之外,我可以使用执行相同操作的任何标志。
答案 0 :(得分:1)
你的问题很混乱。
GCC编译器主要受CPU限制。因此,如果要限制编译时间,请使用ulimit -t 20;
,然后在20秒的CPU时间后,下一个g++
命令将被终止(使用SIGXCPU
)。但是20秒的编译时间是非常重要的。
但是如果你问的是如何让g++
编译器神奇地限制生成的可执行文件的执行时间(或运行时间),那么它就不是编译器的业务。
阅读setrlimit(2),这是ulimit
Bash builtin调用的系统调用。
关于一般时间,请阅读time(7)。在您的特定C ++代码中,您可能有兴趣使用timer_create(2)或alarm(2)(并且可以在开头附近调用setrlimit(2)。)
另见timeout(1)。