私たちは、ユーザーがオプションのpythonコールバック関数をオーバーライドできるようにするアプリケーションを用意しています。cpython呼び出しで空白/空の関数を検出していますか?
例シリアルデータを受信したとき、任意のユーザ定義のPython関数が呼び出される:
def onDataReceived(bytes, timeStamp, address, peer):
return
これは、ソースファイルからではなく、アプリケーションにコンパイル。
アプリケーションはC++のリアルタイム処理エンジンであるため、cpythonインタプリタを呼び出すとかなりのオーバーヘッドが消費されることに注意してください。私はプリコンパイルされた関数へのアクセスを持っているので、テキストを手で直接構文解析することなく、上記のように空白/空が空であるかどうかを判断する方法はありますか?
ありがとうございました。
@mswなぜ質問に答えることができないのか混乱しています。 Antti Haapalaは以下の非常に実行可能なソリューションを提供しています。 – rbairos
インタープリタへの呼び出しは大丈夫ですか?あなたの質問はそうでなければ示唆します。 – msw
私はインタプリタを呼び出し、前述のようにコードがアプリケーションでコンパイルされるので結果をキャッシュすることができるので、テキスト編集が行われたときにそれを検出するのは簡単です。私はちょうど最後の関数を後で不必要に繰り返し呼び出すことはしたくない。 私は彼の答えをとり、私が現在実装しているように、CPythonの同等のPyFunctionObjectを直接調べることもできます。 これに照らして依然として質問が下位投票に値するとは思わないでください。 – rbairos