2017-08-25 89 views
-1

我正在运行fortran代码。代码没有暂停,也没有任何要求用户执行任何操作的开关。它应该始终以无止境的方式运行。这是一个具有大外部循环和几个OpenMP内部循环的代码。我输出的唯一东西是更大外部循环的索引,以便我可以知道代码在哪里。奇怪的暂停行为Fortran

该代码通常运行没有问题。然而,最后两次我运行它,代码停止没有错误(我知道,因为核心使用率开始为0%)。但是,如果我按下控制台中的输入代码恢复正常。

所以我的问题是,有什么办法可以在运行时暂停fortran代码,而不必在代码中明确停顿?

+0

哪个操作系统?视窗?在后面的情况下,可能会在终端窗口中选择阻止进一步输出,并且选择将通过删除。 – albert

+0

是的。视窗。让我试着去做,看看是否就是这样。 – phdstudent

回答

0

您的程序中是否有任何READ声明?如果他们在等待输入,他们会暂停终端。

例如,以下程序看起来像是在循环中间暂停。按Enter键允许继续。

integer i 
do i = 1, 10 
    if (i == 5) read(*, *) 
    print *, i 
end do 
end 

也许您或其他人为调试目的添加了READ并忘记将其删除?