ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/libev/ev.html
(Generate patch)

Comparing libev/ev.html (file contents):
Revision 1.51 by root, Tue Nov 27 19:23:31 2007 UTC vs.
Revision 1.52 by root, Tue Nov 27 19:41:52 2007 UTC

4<head> 4<head>
5 <title>libev</title> 5 <title>libev</title>
6 <meta name="description" content="Pod documentation for libev" /> 6 <meta name="description" content="Pod documentation for libev" />
7 <meta name="inputfile" content="&lt;standard input&gt;" /> 7 <meta name="inputfile" content="&lt;standard input&gt;" />
8 <meta name="outputfile" content="&lt;standard output&gt;" /> 8 <meta name="outputfile" content="&lt;standard output&gt;" />
9 <meta name="created" content="Tue Nov 27 20:23:27 2007" /> 9 <meta name="created" content="Tue Nov 27 20:38:24 2007" />
10 <meta name="generator" content="Pod::Xhtml 1.57" /> 10 <meta name="generator" content="Pod::Xhtml 1.57" />
11<link rel="stylesheet" href="http://res.tst.eu/pod.css"/></head> 11<link rel="stylesheet" href="http://res.tst.eu/pod.css"/></head>
12<body> 12<body>
13<div class="pod"> 13<div class="pod">
14<!-- INDEX START --> 14<!-- INDEX START -->
179might be supported on the current system, you would need to look at 179might be supported on the current system, you would need to look at
180<code>ev_embeddable_backends () &amp; ev_supported_backends ()</code>, likewise for 180<code>ev_embeddable_backends () &amp; ev_supported_backends ()</code>, likewise for
181recommended ones.</p> 181recommended ones.</p>
182 <p>See the description of <code>ev_embed</code> watchers for more info.</p> 182 <p>See the description of <code>ev_embed</code> watchers for more info.</p>
183 </dd> 183 </dd>
184 <dt>ev_set_allocator (void *(*cb)(void *ptr, long size))</dt> 184 <dt>ev_set_allocator (void *(*cb)(void *ptr, size_t size))</dt>
185 <dd> 185 <dd>
186 <p>Sets the allocation function to use (the prototype is similar to the 186 <p>Sets the allocation function to use (the prototype and semantics are
187realloc C function, the semantics are identical). It is used to allocate 187identical to the realloc C function). It is used to allocate and free
188and free memory (no surprises here). If it returns zero when memory 188memory (no surprises here). If it returns zero when memory needs to be
189needs to be allocated, the library might abort or take some potentially 189allocated, the library might abort or take some potentially destructive
190destructive action. The default is your system realloc function.</p> 190action. The default is your system realloc function.</p>
191 <p>You could override this function in high-availability programs to, say, 191 <p>You could override this function in high-availability programs to, say,
192free some memory if it cannot allocate memory, to use a special allocator, 192free some memory if it cannot allocate memory, to use a special allocator,
193or even to sleep a while and retry until some memory is available.</p> 193or even to sleep a while and retry until some memory is available.</p>
194 <p>Example: replace the libev allocator with one that waits a bit and then 194 <p>Example: replace the libev allocator with one that waits a bit and then
195retries: better than mine).</p> 195retries: better than mine).</p>
196<pre> static void * 196<pre> static void *
197 persistent_realloc (void *ptr, long size) 197 persistent_realloc (void *ptr, size_t size)
198 { 198 {
199 for (;;) 199 for (;;)
200 { 200 {
201 void *newptr = realloc (ptr, size); 201 void *newptr = realloc (ptr, size);
202 202

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines