由不同的类加载器加载的相同本机库

请考虑以下情形:

我有两个java类,使用不同的系统类加载器加载。 我有一个实现了队列的本机库。 这两个类都将加载相同的库,并将元素添加到队列中。 可能吗? 如果是这样,本地库实现是否将在这两个类之间共享。

根据JNI规范,这是不可能的。

在JDK中,每个类加载器都管理自己的一组本机库。 无法将相同的JNI本机库加载到多个类加载器中。 这样做会导致抛出UnsatisfiedLinkError 。 例如, System.loadLibrary在用于将本机库加载到两个类加载器时抛出UnsatisfiedLinkError