JavoNet 是线程安全库吗,更重要的是,它是否允许使用所有线程?

Is JavoNet a threadsafe library, and more imporantlty, does it allow usage of all threads?

javanet 线程安全吗?我无法以任何一种方式找到任何文档。即使它是线程安全的,是否有某种 "mutex" 阻止所有线程的完全使用?

当我尝试并行 运行 javanet 时,它确实有效,但是 CPU 使用率并没有显着增加超过顺序负载(即在 10CPU 系统上, CPU 并行负载的使用率徘徊在 20% 左右,仅是顺序 CPU 负载 10% 的两倍; 然而,如果我 运行 10 版本完全相同的顺序代码(使用 javanet),我达到了 100% CPU 使用....所以它 "feels" 像 javonet 一样必须有一些内置的互斥锁来防止完全并行使用。

Javonet 是线程安全的。您只需遵循编写多线程应用程序的标准实践,Javonet 将负责正确执行您的代码。

Javanet 创建新的对应 .NET 线程来调用 Java 个线程。如果从其他线程调用,回调、事件和委托的另一种方式 Javonet 将在 Java 端创建相应的线程。一旦调用线程完成,Javonet 将关闭另一端的线程。

如果相应的线程已经存在,Javonet 将重新加入有效的线程。

Javanet 在访问对象实例时确实使用了内部互斥锁/读写锁,一些缓存集合和类型取决于您的 Java 代码可能会影响并行化能力。