[
https://issues.apache.org/jira/browse/IGNITE-1694?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15000516#comment-15000516
]
ASF GitHub Bot commented on IGNITE-1694:
----------------------------------------
GitHub user ptupitsyn opened a pull request:
https://github.com/apache/ignite/pull/220
IGNITE-1694 .Net: More efficient way to call native methods.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/ptupitsyn/ignite ignite-1694
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/ignite/pull/220.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #220
----
commit 7966a36aa604adc0df0afa310856295a06e9de1c
Author: Pavel Tupitsyn <[email protected]>
Date: 2015-11-11T13:22:57Z
first draft
commit e4290506e38a0e47077fb6aa7af6a0744340ec5c
Author: Pavel Tupitsyn <[email protected]>
Date: 2015-11-11T14:49:10Z
wip
commit 5aa5fcb5767aa6118fcbdc03c0352af05955d7b7
Author: Pavel Tupitsyn <[email protected]>
Date: 2015-11-11T15:01:30Z
Delegates done
commit d63261a79eea6999849024e369b68cb15d35f4ab
Author: Pavel Tupitsyn <[email protected]>
Date: 2015-11-11T15:02:34Z
SuppressUnmanagedCodeSecurity
commit 6ad92dfe76903e4ddd62ef7d5b4e489a3dd00c7d
Author: Pavel Tupitsyn <[email protected]>
Date: 2015-11-11T15:09:18Z
Reformatting
commit 4348b334760fce4c7998ed098df1cda5d77ff9fd
Author: Pavel Tupitsyn <[email protected]>
Date: 2015-11-11T15:14:21Z
Extract to a separate class
commit 97cfccc0906ba2c2ddf40f1f0ea66de4d9baba26
Author: Pavel Tupitsyn <[email protected]>
Date: 2015-11-11T15:15:53Z
wip
commit 8a6f448ced8b28aafc7d543cfb215f0d8e94ba83
Author: Pavel Tupitsyn <[email protected]>
Date: 2015-11-11T15:26:06Z
Fix naming style
----
> .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
> Assignee: Pavel Tupitsyn
> 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)