2

複数のウィジェットを使用して、アプリケーションのダッシュボードを作成しました。各ウィジェットには、対応する独自の機能があります。ダッシュボードの初期ロード中に、すべてのウィジェットはajaxを使用して$(document).ready()を介して独自の関数を呼び出しています。このシナリオの問題は、一度に1つの関数のみが実行され、最初の関数が正常に実行された後にのみ、残りのすべての関数が実行されることです。10個のウィジェットがある場合は、すべてが次々に表示されます。

実行時間に基づいて、すべての機能を同時に実行する必要があります。つまり、1つのウィジェットは、他のウィジェットの完了を待つ必要はありませんが、関数が処理を完了すると同時に結果を処理して表示する必要があります。

4

1 に答える 1

3

ついに私は上記の問題の答えを得ました、

ファイルベースのセッションを使用しているため、PHPはリクエストごとにセッションファイルをロックし、スクリプトが終了/終了するまでそのロックを維持します。

スクリプトでPHPセッションファイルのロックを解除する必要がある場合は、スクリプトで使用できますsession_write_close()。これにより、セッションファイルのロックが解除され、そのインスタンスに同じものが使用されます。

同時に、session_write_close()すべてのリクエストが同じ単一のセッションファイルに対して苦労しているため、関数はすべてのリクエストをシリアルとして作成します。

だからsession_write_close()、私は私の問題を修正しました。

@kalpeshpatelと@iJDにご回答いただきありがとうございます。

于 2012-10-26T03:15:47.657 に答える