下列项是 Oracle Solaris Studio 中 OpenMP 的其他增强功能。
新的线程缺省数-用于执行并行区域的线程的缺省数量从两个线程更改为计算机上的可用内核数,上限为 32。
堆栈溢出检测和诊断-现有 C、C++ 和 Fortran 编译器选项 –xcheck=stkovf 已扩展,可以选择启用运行时错误诊断。
语法如下所示:
–xcheck=stkovf [:detect | :diagnose]
如果指定了 :detect,则通过执行通常与错误关联的信号处理程序来处理检测到的堆栈溢出错误。
如果指定 :diagnose,则通过捕获关联的信号来处理检测到的堆栈溢出错误并通过调用 stack_violation(3C) 来诊断错误。如果诊断到堆栈溢出错误,则会向 stderr 输出错误消息。这是没有指定任何内容时的缺省行为。
有关 –xcheck=stkovf 编译器选项的更多信息,请参见 cc(1)、CC(1) 或 f95(1) 手册页。