This is the official manual for the latest Org-mode release.
:session header argument starts a (possibly named) session for an
interpreted language where the interpreter’s state is preserved. All code
blocks sharing the same name are exectuted by the same interpreter process.
By default, a session is not started.
noneThe default. Each block is evaluated in its own interpreter process, which is terminated after the evaluation.
otherAny other string passed to the
:sessionheader argument will give the session a name. For example,
:session mysession. If
:sessionis given but no name string is specified, the session is named according to the language used in the block. All blocks with the same session name share the same session. Using different session names enables concurrent sessions (even for the same interpreted language, if the language supports multiple sessions).