So far, I've gotten Javonet to work to calling a .net dll. It was as easy as advertised to create the javonet code.
However, in my case, I have a loop that runs approx 10 million times, and within that loop, I'm calling a dll method via Javonet. My question is: since I seem to pass the method name as a String to Javonet (based on javonet's way of doing things), I'm assuming that Javonet uses some sort of reflection to find the corresponding dll method...but wouldn't that be slow (when in a 10 million loop) especially since there are about a dozen different dlls that we've registered for javonet (or slower than solutions such as jni4net and jnbridge that seem to generate actual proxies which allow me to reference in my java code the dll method names themselves without passing the method name as a String?)
Also, is Javonet "smart" enough to copy the whole array (of primitives) into the "Java VM's memory/stack" so that when I try to access every element in the (very large, approx 2GB array) it doesn't try to do a JNI call for every element access?
Lastly, in general, is there any theoretical (or observed) reason why Javonet would be (substantively) faster/slower than jni4net or jnbridgePro in my scenario above (a loop of size 10 million and arrays of primitives that contain approx 2GB of primitive floats)?