ホームページ >php教程 >php手册 >PHPセッションの読み取り/書き込みロックの問題

PHPセッションの読み取り/書き込みロックの問題

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-06-21 08:53:09804ブラウズ

session_start() の後、対応するセッション ファイルはロックされ、現在のスクリプトが終了するまでロックは解除されません。
ロック期間中にプロセスが同じセッション ID にアクセスした場合、ファイルのロックが解除されるまで session_start() は開始されません。
解決策は、セッションにデータを設定した後に session_write_close() を呼び出して、データをファイルに書き込み、セッションを終了することです

たとえば、次のコード

PHP コード
セッション名("STEST");
session_id("テストID");
session_start();
$_SESSION["カウント"]=0;
session_write_close();
スリープ(10);
エコー「成功」;
?>


session_write_close();
を追加しない場合 3 つのプロセスが同時にページにアクセスします。最初のプロセスは 10 秒間実行され、2 番目のプロセスは 20 秒間実行され、3 番目のプロセスは 30 秒間実行されます。
session_write_close() を追加した後
3 つの同時プロセスが 10 秒以内に実行されます



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。