[jira] [Updated] (IGNITE-1652) .Net: Rework async APIs (remove WithAsync/GetFuture)
[ https://issues.apache.org/jira/browse/IGNITE-1652?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Pavel Tupitsyn updated IGNITE-1652: Description: {code} cache.WithAsync().Get(); IFuture future = cache.GetFuture(); {code} should become {code} Task task = cache.GetAsync(); {code} Guidelines: https://msdn.microsoft.com/en-us/library/hh873175(v=vs.110).aspx First step is .Net-only (remove GetFuture from public API, call it inside *Async methods). This requires 2 JNI calls. Later we should look into making it a single JNI call. was: {code} cache.WithAsync().Get(); var future = cache.GetFuture(); {code} should become {code} var future = cache.GetAsync(); {code} See if we can make ToTask() more efficient, or even get rid of Futures completely in favor of tasks, preserving performance. First step is .Net-only (remove GetFuture from public API, call it inside *Async methods). This requires 2 JNI calls. Later we should look into making it a single JNI call. > .Net: Rework async APIs (remove WithAsync/GetFuture) > > > Key: IGNITE-1652 > URL: https://issues.apache.org/jira/browse/IGNITE-1652 > Project: Ignite > Issue Type: Task > Components: interop >Affects Versions: 1.5 >Reporter: Pavel Tupitsyn >Assignee: Pavel Tupitsyn > Fix For: 1.5 > > > {code} > cache.WithAsync().Get(); > IFuture future = cache.GetFuture(); > {code} > should become > {code} > Task task = cache.GetAsync(); > {code} > Guidelines: https://msdn.microsoft.com/en-us/library/hh873175(v=vs.110).aspx > First step is .Net-only (remove GetFuture from public API, call it inside > *Async methods). This requires 2 JNI calls. > Later we should look into making it a single JNI call. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (IGNITE-1652) .Net: Rework async APIs (remove WithAsync/GetFuture)
[ https://issues.apache.org/jira/browse/IGNITE-1652?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Pavel Tupitsyn updated IGNITE-1652: Description: {code} cache.WithAsync().Get(); var future = cache.GetFuture(); {code} should become {code} var future = cache.GetAsync(); {code} See if we can make ToTask() more efficient, or even get rid of Futures completely in favor of tasks, preserving performance. First step is .Net-only (remove GetFuture from public API, call it inside *Async methods). This requires 2 JNI calls. Later we should look into making it a single JNI call. was: {code} cache.WithAsync().Get(); var future = cache.GetFuture(); {code} should become {code} var future = cache.GetAsync(); {code} First step is .Net-only (remove GetFuture from public API, call it inside *Async methods). This requires 2 JNI calls. Later we should look into making it a single JNI call. > .Net: Rework async APIs (remove WithAsync/GetFuture) > > > Key: IGNITE-1652 > URL: https://issues.apache.org/jira/browse/IGNITE-1652 > Project: Ignite > Issue Type: Task > Components: interop >Affects Versions: 1.5 >Reporter: Pavel Tupitsyn >Assignee: Pavel Tupitsyn > Fix For: 1.5 > > > {code} > cache.WithAsync().Get(); > var future = cache.GetFuture(); > {code} > should become > {code} > var future = cache.GetAsync(); > {code} > See if we can make ToTask() more efficient, or even get rid of Futures > completely in favor of tasks, preserving performance. > First step is .Net-only (remove GetFuture from public API, call it inside > *Async methods). This requires 2 JNI calls. > Later we should look into making it a single JNI call. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (IGNITE-1652) .Net: Rework async APIs (remove WithAsync/GetFuture)
[ https://issues.apache.org/jira/browse/IGNITE-1652?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Pavel Tupitsyn updated IGNITE-1652: Description: {code} cache.WithAsync().Get(); var future = cache.GetFuture(); {code} should become {code} var future = cache.GetAsync(); {code} First step is .Net-only (remove GetFuture from public API, call it inside *Async methods). This requires 2 JNI calls. Later we should look into making it a single JNI call. was: {code} cache.WithAsync().Get(); var result = cache.GetFuture(); {code} should become {code} var result = cache.GetAsync(); {code} First step is .Net-only (remove GetFuture from public API, call it inside *Async methods). This requires 2 JNI calls. Later we should look into making it a single JNI call. > .Net: Rework async APIs (remove WithAsync/GetFuture) > > > Key: IGNITE-1652 > URL: https://issues.apache.org/jira/browse/IGNITE-1652 > Project: Ignite > Issue Type: Task > Components: interop >Affects Versions: 1.5 >Reporter: Pavel Tupitsyn >Assignee: Pavel Tupitsyn > Fix For: 1.5 > > > {code} > cache.WithAsync().Get(); > var future = cache.GetFuture(); > {code} > should become > {code} > var future = cache.GetAsync(); > {code} > First step is .Net-only (remove GetFuture from public API, call it inside > *Async methods). This requires 2 JNI calls. > Later we should look into making it a single JNI call. -- This message was sent by Atlassian JIRA (v6.3.4#6332)