<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<META NAME="ROBOTS" CONTENT="NOINDEX">
<link rel="canonical" href="https://ignite.apache.org/releases/1.5.0.final/javadoc/org/apache/ignite/lang/class-use/IgniteAsyncSupport.html" />
<!-- Generated by javadoc (version 1.7.0_80) on Tue Dec 29 05:37:09 EST 2015 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface org.apache.ignite.lang.IgniteAsyncSupport (Ignite 1.5.0.final)</title>
<meta name="date" content="2015-12-29">
<link rel="stylesheet" type="text/css" href="../../../../../javadoc.css" title="Style">

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-61232409-1', 'auto');
  ga('send', 'pageview');

</script></head>
<body>
<script type="text/javascript"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="Uses of Interface org.apache.ignite.lang.IgniteAsyncSupport (Ignite 1.5.0.final)";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../../../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang">Class</a></li>
<li class="navBarCell1Rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em>Ignite - In-Memory Data Fabric</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/ignite/lang/class-use/IgniteAsyncSupport.html" target="_top">Frames</a></li>
<li><a href="IgniteAsyncSupport.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<a name="skip-navbar_top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Interface org.apache.ignite.lang.IgniteAsyncSupport" class="title">Uses of Interface<br>org.apache.ignite.lang.IgniteAsyncSupport</h2>
</div>
<div class="classUseContainer">
<ul class="blockList">
<li class="blockList">
<table border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
<caption><span>Packages that use <a href="../../../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang">IgniteAsyncSupport</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Package</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="#org.apache.ignite">org.apache.ignite</a></td>
<td class="colLast">
<div class="block">Contains entry-point <b>Ignite & HPC APIs.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="#org.apache.ignite.lang">org.apache.ignite.lang</a></td>
<td class="colLast">
<div class="block">Contains general language constructs and functional APIs for distributed computations.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="#org.apache.ignite.transactions">org.apache.ignite.transactions</a></td>
<td class="colLast">
<div class="block">Contains transaction-related classes.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<ul class="blockList">
<li class="blockList"><a name="org.apache.ignite">
<!--   -->
</a>
<h3>Uses of <a href="../../../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang">IgniteAsyncSupport</a> in <a href="../../../../../org/apache/ignite/package-summary.html">org.apache.ignite</a></h3>
<table border="0" cellpadding="3" cellspacing="0" summary="Use table, listing subinterfaces, and an explanation">
<caption><span>Subinterfaces of <a href="../../../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang">IgniteAsyncSupport</a> in <a href="../../../../../org/apache/ignite/package-summary.html">org.apache.ignite</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Interface and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>interface&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/IgniteCache.html" title="interface in org.apache.ignite">IgniteCache</a>&lt;K,V&gt;</strong></code>
<div class="block">Main entry point for all <b>Data Grid APIs.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>interface&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/IgniteCluster.html" title="interface in org.apache.ignite">IgniteCluster</a></strong></code>
<div class="block">Represents whole cluster (all available nodes) and also provides a handle on <a href="../../../../../org/apache/ignite/IgniteCluster.html#nodeLocalMap()"><code>IgniteCluster.nodeLocalMap()</code></a> which
 provides map-like functionality linked to current grid node.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>interface&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/IgniteCompute.html" title="interface in org.apache.ignite">IgniteCompute</a></strong></code>
<div class="block">Defines compute grid functionality for executing tasks and closures over nodes
 in the <a href="../../../../../org/apache/ignite/cluster/ClusterGroup.html" title="interface in org.apache.ignite.cluster"><code>ClusterGroup</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>interface&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/IgniteEvents.html" title="interface in org.apache.ignite">IgniteEvents</a></strong></code>
<div class="block">Provides functionality for local and remote event notifications on nodes defined by <a href="../../../../../org/apache/ignite/IgniteEvents.html#clusterGroup()"><code>IgniteEvents.clusterGroup()</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>interface&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/IgniteFileSystem.html" title="interface in org.apache.ignite">IgniteFileSystem</a></strong></code>
<div class="block"><b>IG</b>nite <b>F</b>ile <b>S</b>ystem API.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>interface&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/IgniteMessaging.html" title="interface in org.apache.ignite">IgniteMessaging</a></strong></code>
<div class="block">Provides functionality for topic-based message exchange among nodes defined by <a href="../../../../../org/apache/ignite/IgniteMessaging.html#clusterGroup()"><code>IgniteMessaging.clusterGroup()</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>interface&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/IgniteServices.html" title="interface in org.apache.ignite">IgniteServices</a></strong></code>
<div class="block">Defines functionality necessary to deploy distributed services on the grid.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.apache.ignite.lang">
<!--   -->
</a>
<h3>Uses of <a href="../../../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang">IgniteAsyncSupport</a> in <a href="../../../../../org/apache/ignite/lang/package-summary.html">org.apache.ignite.lang</a></h3>
<table border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
<caption><span>Methods in <a href="../../../../../org/apache/ignite/lang/package-summary.html">org.apache.ignite.lang</a> that return <a href="../../../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang">IgniteAsyncSupport</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang">IgniteAsyncSupport</a></code></td>
<td class="colLast"><span class="strong">IgniteAsyncSupport.</span><code><strong><a href="../../../../../org/apache/ignite/lang/IgniteAsyncSupport.html#withAsync()">withAsync</a></strong>()</code>
<div class="block">Gets instance of this component with asynchronous mode enabled.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.apache.ignite.transactions">
<!--   -->
</a>
<h3>Uses of <a href="../../../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang">IgniteAsyncSupport</a> in <a href="../../../../../org/apache/ignite/transactions/package-summary.html">org.apache.ignite.transactions</a></h3>
<table border="0" cellpadding="3" cellspacing="0" summary="Use table, listing subinterfaces, and an explanation">
<caption><span>Subinterfaces of <a href="../../../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang">IgniteAsyncSupport</a> in <a href="../../../../../org/apache/ignite/transactions/package-summary.html">org.apache.ignite.transactions</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Interface and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>interface&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/transactions/Transaction.html" title="interface in org.apache.ignite.transactions">Transaction</a></strong></code>
<div class="block">Grid cache transaction.</div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
</li>
</ul>
</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../../../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang">Class</a></li>
<li class="navBarCell1Rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em>Ignite - In-Memory Data Fabric</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/ignite/lang/class-use/IgniteAsyncSupport.html" target="_top">Frames</a></li>
<li><a href="IgniteAsyncSupport.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<a name="skip-navbar_bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small><table width="100%" border="0" cellspacing=0 cellpadding=0 style="padding: 5px">                                     <tr>                                         <td>                                             <table style="padding-left: 0; margin: 0">                                                 <tbody style="padding: 0; margin: 0">                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <a target=_blank href="https://ignite.apache.org"><nobr>2015 Copyright &#169; Apache Software Foundation</nobr></a>                                                         </td>                                                     </tr>                                                 </tbody>                                             </table>                                         </td>                                         <td width="100%" align="right" valign="center">                                             <a href="https://twitter.com/ApacheIgnite" class="twitter-follow-button" data-show-count="false" data-size="large">Follow @ApacheIgnite</a>                                             <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script>                                         </td>                                     </tr>                                     <tr>                                         <td colspan="2" valign="top" align="left">                                             <table style="padding-left: 0; margin: 0">                                                 <tbody style="padding: 0; margin: 0">                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <b>Ignite Fabric</b>                                                         </td>                                                         <td>:&nbsp;&nbsp;                                                             ver. <strong>1.5.0.final</strong>                                                         </td>                                                     </tr>                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <b>Release Date</b>                                                         </td>                                                         <td>:&nbsp;&nbsp;                                                             December 29 2015                                                         </td>                                                     </tr>                                                 </tbody>                                             </table>                                         </td>                                     </tr>                                     </table></small></p>
</body>
</html>
