私は現在、Python用の独自の「マーシャル」コードをロールバックしようとしています。これにより、コンパイルされたPythonコードをGoogle App Engineに保存して、動的な方法でスクリプトを提供できます。ご存知のとおり、「marshal」はGAEでサポートされておらず、「pickle」はコードオブジェクトをシリアル化できません。
でコードオブジェクトを作成できることがわかりましたtypes.CodeType()
が、12個の引数が必要です。
私が試した限り、この呼び出しに関するドキュメントは見つかりませんでした。コードオブジェクトを作成する必要があるので、それを実行できexec()
ます。私の質問は、この「コンストラクター」のパラメーターや、それを内省する方法を知っている人はいますか?types.CodeType()
ここでinfo()
定義した関数を使用しましたが、一般的な情報だけを吐き出します!
クイックFAQ:
- Q:なぜコードをコンパイルするのですか?
- A:Google App EngineではCPU時間に実際の費用がかかり、CPUサイクルのすべてのビットでカウントを節約できます。
- Q:「マーシャル」を使ってみませんか?
- A:これはGoogleAppEngineでサポートされていないモジュールの1つです。
- Q:「ピクルス」を使ってみませんか?
- A:Pickleは、コードオブジェクトのシリアル化をサポートしていません。
アップデート
Google App Engineインフラストラクチャでは、2011年7月7日の時点でコードオブジェクトのインスタンス化が許可されていないため、ここでの私の議論は議論の余地があります。これがGAEで将来修正されることを願っています。