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)