wikipage of cppcms指出(强调我的意思):
同步应用程序位于池中。它们是由特殊的 cppcms :: applications_pool ::工厂对象已安装到 applications_pool对象。
这些对象是长期存在的对象,一旦创建它们 通常会缓存在池中以备将来重用。
根据传入请求,从池中获取应用程序,或者 特殊的cppcms :: http :: context对象是 在所有请求处理期间分配给应用程序的
此请求在线程池中通过调用 application :: main()虚拟函数,实际处理 请求。
请求完成后,将取消分配此上下文,并且 应用程序返回到池中以备将来重用。
因此,当您编写自己的应用程序时,您可能会认为 构造函数不经常被调用。您还应该假设 他们将“存活”很长时间。
最好随身缓存一些常规的非可变信息 这样的对象。
同时触发2个请求时(或延迟时间小于完成时间),会生成2个应用程序实例吗?
文本说,该应用程序是从池中提取的,并在请求完成后返回。 page about thread safety提到
除非另外明确说明,否则所有类都不是线程安全的,无法同时从多个线程访问
并且没有提到cppcms::application
类。
这是否意味着: