linux-packaging-mono/docs/deploy/mono-api-codegen.html
Xamarin Public Jenkins 2c051c3d51 Imported Upstream version 4.0.3.13
Former-commit-id: 4f1f69b42e04def9a697c2550b23b9cae645ef29
2015-07-20 03:39:00 -04:00

162 lines
4.4 KiB
HTML

<?xml version="1.0" encoding="us-ascii"?><span>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>mono-api-codegen.html</title>
<style type="text/css">
h3 {
font-size: 18px;
padding-bottom: 4pt;
border-bottom: 2px solid #dddddd;
}
.api {
border: 1px solid;
padding: 10pt;
margin: 10pt;
}
.api-entry {
border-bottom: none;
font-size: 18px;
}
.prototype {
border: 1px solid;
background-color: #f2f2f2;
padding: 5pt;
margin-top: 5pt;
margin-bottom: 5pt;
}
.header {
border: 1px solid;
padding: 0 0 5pt 5pt;
margin: 10pt;
white-space: pre;
font-family: monospace;
}
.code {
border: 1px solid;
padding: 0 0 5pt 5pt;
margin: 10pt;
white-space: pre;
font-family: monospace;
}
</style>
</head>
<body>
<h3>Code manager</h3>
<a name="api:mono_code_manager_commit"></a>
<div class="api">
<div class="api-entry">mono_code_manager_commit</div>
<div class="prototype">void
mono_code_manager_commit (MonoCodeManager *cman, void *data, int size, int newsize)
</div>
<p />
<b>Parameters</b>
<blockquote><dt><i>cman:</i></dt><dd> a code manager</dd><dt><i>data:</i></dt><dd> the pointer returned by mono_code_manager_reserve ()</dd><dt><i>size:</i></dt><dd> the size requested in the call to mono_code_manager_reserve ()</dd><dt><i>newsize:</i></dt><dd> the new size to reserve</dd></blockquote>
<b>Remarks</b>
<p />
If we reserved too much room for a method and we didn't allocate
already from the code manager, we can get back the excess allocation
for later use in the code manager.
</div> <a name="api:mono_code_manager_destroy"></a>
<div class="api">
<div class="api-entry">mono_code_manager_destroy</div>
<div class="prototype">void
mono_code_manager_destroy (MonoCodeManager *cman)
</div>
<p />
<b>Parameters</b>
<blockquote><dt><i>cman:</i></dt><dd> a code manager</dd></blockquote>
<b>Remarks</b>
<p />
Free all the memory associated with the code manager <i>cman</i>.
</div> <a name="api:mono_code_manager_foreach"></a>
<div class="api">
<div class="api-entry">mono_code_manager_foreach</div>
<div class="prototype">void
mono_code_manager_foreach (MonoCodeManager *cman, MonoCodeManagerFunc func, void *user_data)
</div>
<p />
<b>Parameters</b>
<blockquote><dt><i>cman:</i></dt><dd> a code manager</dd><dt><i>func:</i></dt><dd> a callback function pointer</dd><dt><i>user_data:</i></dt><dd> additional data to pass to <i>func</i></dd></blockquote>
<b>Remarks</b>
<p />
Invokes the callback <i>func</i> for each different chunk of memory allocated
in the code manager <i>cman</i>.
</div> <a name="api:mono_code_manager_invalidate"></a>
<div class="api">
<div class="api-entry">mono_code_manager_invalidate</div>
<div class="prototype">void
mono_code_manager_invalidate (MonoCodeManager *cman)
</div>
<p />
<b>Parameters</b>
<blockquote><dt><i>cman:</i></dt><dd> a code manager</dd></blockquote>
<b>Remarks</b>
<p />
Fill all the memory with an invalid native code value
so that any attempt to execute code allocated in the code
manager <i>cman</i> will fail. This is used for debugging purposes.
</div> <a name="api:mono_code_manager_new_dynamic"></a>
<div class="api">
<div class="api-entry">mono_code_manager_new_dynamic</div>
<div class="prototype">MonoCodeManager*
mono_code_manager_new_dynamic (void)
</div>
<p />
<b>Returns</b>
<blockquote> the new code manager
</blockquote>
<b>Remarks</b>
<p />
Creates a new code manager suitable for holding native code that can be
used for single or small methods that need to be deallocated independently
of other native code.
</div> <a name="api:mono_code_manager_new"></a>
<div class="api">
<div class="api-entry">mono_code_manager_new</div>
<div class="prototype">MonoCodeManager*
mono_code_manager_new (void)
</div>
<p />
<b>Returns</b>
<blockquote> the new code manager
</blockquote>
<b>Remarks</b>
<p />
Creates a new code manager. A code manager can be used to allocate memory
suitable for storing native code that can be later executed.
A code manager allocates memory from the operating system in large chunks
(typically 64KB in size) so that many methods can be allocated inside them
close together, improving cache locality.
</div></body>
</html>
</span>