8

lua_call()またはの基本的な違いを知っていlua_pcall()ます。後者はより多くのエラーの詳細を提供します。
他に違いはありますか?どちらを使用するかを決定する方法は?

4

2 に答える 2

7

コードのその時点で潜在的なエラーを処理する必要があるlua_pcall場合に使用します。それ以外の場合は、 を使用して、エラーを呼び出しチェーンの上に移動させます。どこでも使用して妄想する必要はありません。lua_calllua_pcall

lua_callよりも高速ですlua_pcall

一番上に少なくとも 1 つあることを確認してlua_pcallください。そうしないと、Lua エラーが見つかったときにアプリがパニックになり、終了します。

于 2013-05-22T12:21:19.413 に答える
5

特定のパフォーマンスの問題lua_pcallがない限り、あらゆる状況で使用してください。次に、 を使用します。ただし、アプリケーションのプロファイリングを行い、軽減できる特定のパフォーマンスの問題を発見した場合に限ります。lua_calllua_call

実行中に Lua によって Lua エラーがスローされたlua_call場合、アプリケーションはほとんど問題を抱えています。そのため、可能な限り が使用されていることを確認する必要がありlua_pcallます。

于 2013-05-22T14:36:32.513 に答える