Vladimir Ozerov created IGNITE-1694:
---------------------------------------

             Summary: .Net: More efficient way to call native methods.
                 Key: IGNITE-1694
                 URL: https://issues.apache.org/jira/browse/IGNITE-1694
             Project: Ignite
          Issue Type: Task
          Components: interop
    Affects Versions: ignite-1.4
            Reporter: Vladimir Ozerov
            Priority: Critical
             Fix For: 1.6


Currently we invoke native platform using 
"Marshal.GetDelegateForFunctionPointer". 

This is the least efficient way to call external code. What can be done to 
improve it:
1) Add [SuppressUnmanagedCodeSecurity] attribute.
2) Use P/Invoke instead. We do not use it now because we unpack native library 
in runtime into some temp folder, while PInvoke searches for libraries in 
predefined file system places. Need to evaluate whether we can switch back to 
P/Invoke somehow.

See 
http://ybeernet.blogspot.ru/2011/03/techniques-of-calling-unmanaged-code.html 
for more info.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to