moduleRack# Rack::Lock was commited to Rack core# http://github.com/rack/rack/commit/7409b0c# Remove this when Rack 1.0 is releasedunlessdefined?LockclassLockFLAG='rack.multithread'.freezedefinitialize(app,lock=Mutex.new)@app,@lock=app,lockenddefcall(env)old,env[FLAG]=env[FLAG],false@lock.synchronize{@app.call(env)}ensureenv[FLAG]=oldendendendend