bokeh.application.application#
提供 Application 类。
应用程序实例是用于创建新Bokeh文档的工厂。
当启动一个Bokeh服务器会话时,Bokeh服务器会向应用程序请求一个新的文档来服务该会话。为此,应用程序首先创建一个新的空文档,然后将这个新文档传递给其每个处理程序的modify_document方法。当所有处理程序都更新了文档后,该文档将用于服务用户会话。
- class Application(*handlers: Handler, metadata: dict[str, Any] | None = None)[source]#
应用程序是文档实例的工厂。
- add(handler: Handler) None[源代码]#
向用于初始化新文档的管道添加一个处理程序。
- Parameters:
handler (Handler) – 此应用程序用于处理文档的处理程序
- on_server_loaded(server_context: ServerContext) None[source]#
当创建新会话时调用以执行代码。
此方法按顺序在每个处理程序上调用
on_server_loaded,并将服务器上下文作为唯一参数传递。
- on_server_unloaded(server_context: ServerContext) None[source]#
当服务器正常退出时调用以执行代码。(在停止服务器的
IOLoop之前。)此方法按顺序在每个处理程序上调用
on_server_unloaded,并将服务器上下文作为唯一参数传递。警告
实际上,这段代码可能不会运行,因为服务器通常会被信号终止。
- async on_session_created(session_context: SessionContext) None[source]#
当创建新会话时调用以执行代码。
此方法按顺序在每个处理器上调用
on_session_created,将会话上下文作为唯一参数传递。可能会返回一个
Future,它将延迟会话创建,直到Future完成。
- async on_session_destroyed(session_context: SessionContext) None[source]#
当会话被销毁时调用以执行代码。
此方法按顺序在每个处理器上调用
on_session_destroyed,将会话上下文作为唯一参数传递。之后,
session_context.destroyed将会是True。
- class ServerContext[源代码]#
用于与Bokeh会话集合相关的服务器特定信息和任务的工具。
这个基类可能对普通用户不感兴趣。
- abstract property sessions: list[ServerSession]#
SessionContext属于此应用程序的实例。子类必须实现此方法。
- class SessionContext(server_context: ServerContext, session_id: ID)[source]#
用于与Bokeh会话相关的服务器特定信息和任务的工具。
这个基类可能对普通用户不感兴趣。
- __init__(server_context: ServerContext, session_id: ID) None[source]#
- abstract with_locked_document(func: Callable[[Document], Awaitable[None]]) Awaitable[None][source]#
在持有文档锁的情况下运行一个函数,并将文档传递给该函数。
子类必须实现此方法。
- Parameters:
func (可调用) – 接受单个参数(Document)并返回
None或Future的函数- Returns:
一个包含函数结果的
Future
- property id: ID#
与此上下文关联的会话的唯一ID。
- property server_context: ServerContext#
此会话上下文的服务器上下文