<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<META NAME="ROBOTS" CONTENT="NOINDEX">
<link rel="canonical" href="https://ignite.apache.org/releases/1.5.0.final/dotnetdoc/functions_j.html" />
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.9.1"/>
<title>Apache Ignite.NET: Class Members</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />

<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>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="ignite_logo.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">Apache Ignite.NET
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.9.1 -->
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('functions_j.html','');});
</script>
<div id="doc-content">
<div class="contents">
<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>

<h3><a class="anchor" id="index_j"></a>- j -</h3><ul>
<li>Job
: <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_compute_1_1_i_compute_job_result.html#a477b0c67b0274a39e81da947cc75077c">Apache.Ignite.Core.Compute.IComputeJobResult&lt; out out TRes &gt;</a>
</li>
<li>JobCancelled
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_event_type.html#a2c9b116d8c7d920d3829f8fccb3f3028">Apache.Ignite.Core.Events.EventType</a>
</li>
<li>JobExecutionAll
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_event_type.html#a8b4ac4ab4792b4185f3bb97424110b0c">Apache.Ignite.Core.Events.EventType</a>
</li>
<li>JobFailed
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_event_type.html#ab23152a38efc47b25e6145f0c184e178">Apache.Ignite.Core.Events.EventType</a>
</li>
<li>JobFailedOver
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_event_type.html#acdb9ad61e0a769c6096e44738a5b23b7">Apache.Ignite.Core.Events.EventType</a>
</li>
<li>JobFinished
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_event_type.html#ac95b17ac7cc82139bb1b2b6fe8408532">Apache.Ignite.Core.Events.EventType</a>
</li>
<li>JobId
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_job_event.html#a2cdc33cdbb4478c89feab51b1dc5eb3d">Apache.Ignite.Core.Events.JobEvent</a>
</li>
<li>JobMapped
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_event_type.html#ada4037f5217ad666a3c2f32756757c5c">Apache.Ignite.Core.Events.EventType</a>
</li>
<li>JobQueued
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_event_type.html#ac86ce2a99209a5ccd7b7f507b341c1b1">Apache.Ignite.Core.Events.EventType</a>
</li>
<li>JobRejected
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_event_type.html#a3029856fba7bb905bc26b2d8e37f76a3">Apache.Ignite.Core.Events.EventType</a>
</li>
<li>JobResulted
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_event_type.html#a514bcb191bc5b210c3700b2639745f16">Apache.Ignite.Core.Events.EventType</a>
</li>
<li>JobStarted
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_event_type.html#a0843e9e1be1eb0c1c995935a2272be7e">Apache.Ignite.Core.Events.EventType</a>
</li>
<li>JobTimedout
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_event_type.html#a5e402634beae34da2f42bc0382871e24">Apache.Ignite.Core.Events.EventType</a>
</li>
<li>JvmClasspath
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_ignite_configuration.html#a2ac1b8ceddcb7419e210700ed095fd54">Apache.Ignite.Core.IgniteConfiguration</a>
</li>
<li>JvmDllPath
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_ignite_configuration.html#a7cf955377991e4e4a4d27b5a0d4db560">Apache.Ignite.Core.IgniteConfiguration</a>
</li>
<li>JvmInitialMemoryMb
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_ignite_configuration.html#ade3390ed22c66a67ec8f52b22eb0a19d">Apache.Ignite.Core.IgniteConfiguration</a>
</li>
<li>JvmMaxMemoryMb
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_ignite_configuration.html#a7bbb8397300aa0913c6d601ee7f5a47c">Apache.Ignite.Core.IgniteConfiguration</a>
</li>
<li>JvmOptions
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_ignite_configuration.html#a5a4125ed097f12200f5cf948d9157df7">Apache.Ignite.Core.IgniteConfiguration</a>
</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">Generated on Tue Dec 29 2015 13:22:06 for Apache Ignite.NET by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.9.1 </li>
  </ul>
</div>
</body>
</html>
