2017-08-25 20 views
-1

私はFortranコードを実行しています。コードには休止や、ユーザーに何かを要求するスイッチはありません。停止することなく、最初から最後まで実行する必要があります。これは大きな外部ループと複数のOpenMP内部ループを持つコードです。私が出力する唯一のものは、コードがどこにあるかを知るために、より大きな外側ループのインデックスです。奇妙な一時停止動作Fortran

通常、コードは問題なく実行されます。しかし、最後の2回、私はそれを実行し、コードはエラーなしで停止しました(コア使用率が0%になったので、私はそれを知っています)。しかし、コンソールでenterを押すと、コードは正常に再開します。

私の質問では、コードに明示的な一時停止をせずに、実行時にFortranコードを一時停止する方法はありますか?

+0

どのOSですか?窓?後者の場合、ターミナルウィンドウ内で選択した出力がブロックされ、その出力はで削除されます。 – albert

+0

はい。 Windows。私がそれをしようとして、それがそれかどうかを見てみましょう。 – phdstudent

答えて

0

あなたのプログラムにはREADの文がありますか?彼らは入力を待っている場合、端末を一時停止します。

たとえば、次のプログラムは、ループの途中で一時停止しているように見えます。 Enterを押すと続行されます。

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

はおそらく、あなたや他の誰かがデバッグ目的のためにREADを追加し、それを削除するのを忘れましたか?

関連する問題