我有一个包含自定义Xpath函数的插件,可以由工作区中的所有项目访问。在创建插件时,它将其创建为单例,因为它需要扩展和扩展点。这样做是为了使自定义功能只注册一次吗?
[]此插件是单身
同样在运行时,这是否意味着利用自定义函数的所有应用程序在调用自定义函数之前需要等待另一个应用程序?如果是这样,这不会减慢一切吗?或者他们可以同时调用这些函数,并且彼此之间没有插件的等待依赖吗?
答案 0 :(得分:3)
所有这一标志确保只加载插件的一个版本。因此,如果插件的版本1.0.0和版本2.0.0都存在于RCP中,则只使用其中一个(通常是最高版本)。
它不会影响插件以任何方式执行的方式。
来自' Bundle-SymbolicName'的OSGi规范:
singleton - 表示捆绑包只能有一个版本 在一个环境中解决。值true表示捆绑 是一个单身人士。默认值为false。框架必须 当单个版本的多个版本时,最多解析一个捆绑包 已安装具有相同符号名称的捆绑包。