Ruby 2.4

CGI::Session::MemoryStore

class CGI::Session::MemoryStore

Parent:Object

内存中会话存储类。

将会话存储实现为全局内存哈希。会话数据只会在Ruby解释器实例中一直存在。

公共类方法

new(session, option=nil) 显示源

创建一个新的MemoryStore实例。

session是这个实例关联的会话。option是初始化选项的列表。目前没有人认出。

# File lib/cgi/session.rb, line 459 def initialize(session, option=nil) @session_id = session.session_id unless GLOBAL_HASH_TABLE.key?(@session_id) unless session.new_session raise CGI::Session::NoSession, "uninitialized session" end GLOBAL_HASH_TABLE[@session_id] = {} end end

公共实例方法

close() 显示源

关闭会话存储。

A no-op.

# File lib/cgi/session.rb, line 486 def close # don't need to close end

delete() 显示源

删除会话状态。

# File lib/cgi/session.rb, line 491 def delete GLOBAL_HASH_TABLE.delete(@session_id) end

restore() 显示源

恢复会话状态。

Returns session data as a hash.

# File lib/cgi/session.rb, line 472 def restore GLOBAL_HASH_TABLE[@session_id] end

update() 显示源

更新会话状态。

A no-op.

# File lib/cgi/session.rb, line 479 def update # don't need to update; hash is shared end