0

現時点では、それらをグローバルに保存しています。それは正しい方法ですか?変数が現在のリクエストにとどまり、リクエストが終了すると消えます。

例えば:

int data1;
int data2;

apr_status_t my_input_filter (ap_filter_t *f, apr_bucket_brigade *bb,
    ap_input_mode_t mode, apr_read_type_e block, apr_off_t readbytes) {
    if (somecond1) data1 = xyz;
    if (somecond2 & data1 == xya) data2 = abc;

    if (somecond3 && data2 == abc) dosomething();
}

3 つの条件は、フィルタリング中に一度に発生するわけではないことに注意してください。それらは異なる時点で表示される可能性がありますが、同じリクエストで発生します。

4

1 に答える 1

0

モジュールがイベントまたはマルチスレッド パッケージのいずれかで実行される場合、グローバル変数に格納することは悪い考えです。

Apache は、リクエスト構造にノート ディクショナリを提供します。個人データの保存に使用します。

于 2012-12-08T07:19:58.397 に答える