0

Processing.org言語を使用して作成した2つのアプリケーションがあります。それらはかなり基本的で、インターネットに定期的に電話をかけ、データを表示します。

これらのプログラムがしばらく実行された後、不明な理由でクラッシュすることがあります。この時点での本当の問題は、アプリケーションがクラッシュを通知しないことです。画面は、次のデータビットを待っているかのようにそこに表示されます。通常は数分かかる可能性があるため、画面が空白であることは奇妙に思われません。

致命的なエラーが発生したときにProcessing.orgアプリケーションをシャットダウンしたり、エラーメッセージを表示したりする方法はありますか?

ありがとうございました。

4

1 に答える 1

0

処理プログラムはJavaプログラムです。ジョージがコメントで述べているように、この質問から、プログラムをクラッシュさせる例外をスローしている可能性があるものを特定することは不可能です。

ただし、例外がメインプログラムループ(Processingのdraw()関数)内から生成される場合は、それをtry-catchブロックでラップし、目に見える方法で例外を処理できます。例:

void draw () {
    try {
        // your code here...
    } catch (Exception e) {
        // display the Exception message on-screen
    }
}

また、その例外メッセージのみを画面に描画し、問題のあるコードの実行を続行しないようにプログラムに指示するフラグを設定する必要がある場合もあります。

例外は、draw()ループ以外のプログラムのどこかからスローされる可能性があるため、必ずしもここでキャッチする必要はありません。したがって、最善の策はログを調べることです。OSXを使用している場合は、(/ Applications / Utilitiesにある)Console.appを試して、プログラムがstderrに何かを吐き出すかどうかを確認してください。Windowsに相当するものはわかりませんが、どこかにログがあるはずです。

要するに、「ジョージが言ったこと」。しかし、うまくいけば、この答えはそれを有用な方法で詳しく説明しています。

于 2012-09-19T19:54:56.297 に答える