建议您尽快释放锁是错误的(并且出于某种原因,我现在无法对此进行反对投票)。
在 write() 调用之前释放锁与根本不使用锁一样有效。重点是并发读取() 必须被阻塞,直到会话关闭,否则会出现竞争条件。
如果您关心性能方面,您应该尽快调用 session_write_close()。
(PHP 5 >= 5.4.0, PHP 7, PHP 8)
SessionHandlerInterface::open — 初始化会话
重新初始化现有会话,或创建一个新的会话。在会话开始或调用 session_start() 时调用。
path
存储/检索会话的路径。
name
会话名称。
建议您尽快释放锁是错误的(并且出于某种原因,我现在无法对此进行反对投票)。
在 write() 调用之前释放锁与根本不使用锁一样有效。重点是并发读取() 必须被阻塞,直到会话关闭,否则会出现竞争条件。
如果您关心性能方面,您应该尽快调用 session_write_close()。
请注意,一旦 $sessionName 已用于从 cookie 数据中为 $sessionId 提供值,它就完全冗余了,因为会话数据的后续读取和写入都由 $sessionId 控制。
如果出于任何原因需要识别与当前 $sessionId 关联的 $sessionName 的值,则应使用在 open() 方法中传递的值。尝试使用来自其他来源的值可能会产生意想不到的副作用。