文字

SessionHandlerInterface::open

(PHP 5 >= 5.4.0)

SessionHandlerInterface::openInitialize session

说明

abstract public bool SessionHandlerInterface::open ( string $save_path , string $name )

Re-initialize existing session, or creates a new one. Called when a session starts or when session_start() is invoked.

参数

save_path

The path where to store/retrieve the session.

name

The session name.

返回值

会话存储的返回值(通常成功返回 0,失败返回 1)。

参见

  • session_name() - 读取/设置会话名称
  • The session.auto-start configuration directive.

用户评论:

[#1] narf at devilix dot net [2014-08-28 15:49:25]

The suggestion that you should free the lock as soon as possible is WRONG (and for some reason, I can't downvote it right now).

Releasing the lock before the write() call is as effective as not using locks at all. The whole point is that a concurrent read() HAS to be blocked until the session is closed, otherwise you'll have race conditions.

If you care about the performance aspect, you should take care to call session_write_close() as soon as possible instead.

[#2] ross at newmail dot ru [2013-10-08 14:46:24]

You should lock your program for as shorter as possible. Lock it straight before read/write operation and unlock it just after this operation. Otherwise you will face with perfomance degradation and even lock your program at all.

Example.
You bind your session to db. Your open method opens the db connection and locks it. No other parallel requests will not be possible until the hole request to your site will be finished (and session close will be called)

上一篇: 下一篇: