1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xml:lang="en-US" lang="en-US" xmlns="http://www.w3.org/1999/xhtml">
3  <head>
4    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
5    <meta http-equiv="Content-Style-Type" content="text/css" />
6    <link rel="stylesheet" href="../../css/manpage.css" type="text/css" />
7<title>Poll</title>
8  </head>
9  <body>
10<h1><CODE>nn::socket::Poll</CODE> Function</h1>
11<h2>Syntax</h2>
12    <div class="section">
13      <pre class="definition">
14s32 Poll(
15     <a href="../../nn/socket/PollFd/Overview.html">PollFd</a> fds[],
16     u32 nfds,
17     s32 timeout
18);
19</pre>
20    </div>
21<h2>Arguments</h2>
22    <div class="section">
23      <table class="arguments">
24        <thead>
25          <tr>
26            <td width="15" />
27<th>Name</th>
28<td>Description</td>
29          </tr>
30        </thead>
31        <tr>
32<td>in</td>
33<th>fds[]</th>
34<td>Specifies the socket to poll and the polling conditions as well as the <a href="../../nn/socket/PollFd/Overview.html"><CODE>PollFd</CODE></a> array for getting the polling results.</td>
35        </tr>
36        <tr>
37<td>in</td>
38<th>nfds</th>
39<td>Specifies the number of elements in the array specified in <SPAN class="argument">fds</SPAN>.</td>
40        </tr>
41        <tr>
42<td>in</td>
43<th>timeout</th>
44<td>Specifies the number of milliseconds to wait for a socket to be found before timing out. Specify a value of <CODE>0</CODE> or greater, or one of the following constants.<br /><itemizedlist><listitem><para><CODE>INFTIM</CODE>: Do not time out.<br /></para></listitem></itemizedlist></td>
45        </tr> </table>
46    </div>
47<h2>Return Values</h2>
48    <div class="section">
49      <br /> <br />
50      <table class="arguments">
51        <thead>
52          <tr>
53<th>Value</th>
54<td>Description</td>
55          </tr>
56        </thead>
57        <tr>
58<th>Positive value</th>
59<td>Number of socket descriptors that can read or write.</td>
60        </tr>
61        <tr>
62          <th>0</th>
63<td>The call has timed out.</td>
64        </tr>
65        <tr>
66<th><CODE>ENETRESET</CODE></th>
67<td>Socket library is not initialized.</td>
68        </tr>
69        <tr>
70<th><CODE>EBADF</CODE></th>
71<td>Invalid socket descriptor.</td>
72        </tr>
73        <tr>
74<th><CODE>EINVAL</CODE></th>
75<td>Invalid processing.</td>
76        </tr>
77      </table> </div>
78<h2>Description</h2>
79    <div class="section">
80<p>Checks the specified set of multiple socket descriptors to see if reading or writing is possible for any of them.</p><p>This function monitors changes in the state of sockets. Normally, it blocks until a socket satisfying the specified conditions is found. The function unblocks if it times out without finding a socket that meets the specified conditions, if the <a href="../../nn/socket/Shutdown.html"><CODE>Shutdown</CODE></a> or <a href="../../nn/socket/Close.html"><CODE>Close</CODE></a> function is used to interrupt socket sending and receiving, or if any abnormality is detected in a socket.</p><!-- write here --></div>
81<h2>See Also</h2>
82    <div class="section">
83      <p class="reference">
84            <br /> </p>
85    </div>
86<h2>Revision History</h2>
87    <div class="section">
88      <dl class="history">
89        <dt>2010/06/14</dt>
90<dd>Initial version.<br />
91        </dd>
92      </dl>
93    </div>
94  <hr><p>CONFIDENTIAL</p></body>
95</html>