OLD | NEW |
1 {{+bindTo:partials.standard_nacl_api}} | 1 {{+bindTo:partials.standard_nacl_article}} |
2 | 2 |
3 <section id="progress-events"> | 3 <section id="progress-events"> |
4 <h1 id="progress-events">Progress Events</h1> | 4 <span id="devcycle-progress-events"></span><h1 id="progress-events"><span id="de
vcycle-progress-events"></span>Progress Events</h1> |
5 <div class="contents local" id="contents" style="display: none"> | 5 <div class="contents local" id="contents" style="display: none"> |
6 <ul class="small-gap"> | 6 <ul class="small-gap"> |
7 <li><a class="reference internal" href="#module-loading-and-progress-events" id=
"id3">Module loading and progress events</a></li> | 7 <li><a class="reference internal" href="#module-loading-and-progress-events" id=
"id3">Module loading and progress events</a></li> |
8 <li><a class="reference internal" href="#handling-progress-events" id="id4">Hand
ling progress events</a></li> | 8 <li><a class="reference internal" href="#handling-progress-events" id="id4">Hand
ling progress events</a></li> |
9 <li><a class="reference internal" href="#displaying-load-status" id="id5">Displa
ying load status</a></li> | 9 <li><a class="reference internal" href="#displaying-load-status" id="id5">Displa
ying load status</a></li> |
10 <li><a class="reference internal" href="#the-lasterror-attribute" id="id6">The <
code>lastError</code> attribute</a></li> | 10 <li><a class="reference internal" href="#the-lasterror-attribute" id="id6">The <
code>lastError</code> attribute</a></li> |
11 <li><a class="reference internal" href="#the-readystate-attribute" id="id7">The
<code>readyState</code> attribute</a></li> | 11 <li><a class="reference internal" href="#the-readystate-attribute" id="id7">The
<code>readyState</code> attribute</a></li> |
12 <li><a class="reference internal" href="#the-exitstatus-attribute" id="id8">The
<code>exitStatus</code> attribute</a></li> | 12 <li><a class="reference internal" href="#the-exitstatus-attribute" id="id8">The
<code>exitStatus</code> attribute</a></li> |
13 </ul> | 13 </ul> |
14 | 14 |
(...skipping 12 matching lines...) Expand all Loading... |
27 <p>The Native Client runtime reports a set of state changes during the module | 27 <p>The Native Client runtime reports a set of state changes during the module |
28 loading process by means of DOM progress events. This set of events is a direct | 28 loading process by means of DOM progress events. This set of events is a direct |
29 port of the proposed W3C <a class="reference external" href="http://www.w3.org/T
R/progress-events/">Progress Events</a> standard (except for the <code>crash</co
de> | 29 port of the proposed W3C <a class="reference external" href="http://www.w3.org/T
R/progress-events/">Progress Events</a> standard (except for the <code>crash</co
de> |
30 event which is an extension of the W3C standard). The following table lists the | 30 event which is an extension of the W3C standard). The following table lists the |
31 events types reported by the Native Client runtime:</p> | 31 events types reported by the Native Client runtime:</p> |
32 <table border="1" class="docutils"> | 32 <table border="1" class="docutils"> |
33 <colgroup> | 33 <colgroup> |
34 </colgroup> | 34 </colgroup> |
35 <thead valign="bottom"> | 35 <thead valign="bottom"> |
36 <tr class="row-odd"><th class="head">Event</th> | 36 <tr class="row-odd"><th class="head">Event</th> |
37 <th class="head">Description</th> | 37 <th class="head">Times |
38 <th class="head">Number of | |
39 times | |
40 triggered</th> | 38 triggered</th> |
41 <th class="head">When event is | 39 <th class="head">When |
42 triggered</th> | 40 triggered</th> |
43 <th class="head">How you might | 41 <th class="head">How you might |
44 react to | 42 respond</th> |
45 event</th> | |
46 </tr> | 43 </tr> |
47 </thead> | 44 </thead> |
48 <tbody valign="top"> | 45 <tbody valign="top"> |
49 <tr class="row-even"><td><code>loadstart</code></td> | 46 <tr class="row-even"><td><dl class="first last docutils"> |
50 <td>Native Client has | 47 <dt><code>loadstart</code></dt> |
51 started to load a | 48 <dd>Native Client has started to |
52 Native Client | 49 load a Native Client module.</dd> |
53 module.</td> | 50 </dl> |
| 51 </td> |
54 <td>once</td> | 52 <td>once</td> |
55 <td>This is the | 53 <td>The |
56 first | 54 first |
57 progress | 55 progress |
58 event | 56 event |
59 triggered | |
60 after the | 57 after the |
61 Native Client | 58 Native Client |
62 module is | 59 module is |
63 instantiated | 60 instantiated |
64 and | 61 and |
65 initialized.</td> | 62 initialized.</td> |
66 <td>Display a | 63 <td>Display a |
67 status | 64 status |
68 message, such | 65 message, such |
69 as | 66 as |
70 “Loading...”</td> | 67 “Loading...”</td> |
71 </tr> | 68 </tr> |
72 <tr class="row-odd"><td><code>progress</code></td> | 69 <tr class="row-odd"><td><dl class="first last docutils"> |
73 <td>Part of the module | 70 <dt><code>progress</code></dt> |
74 has been loaded.</td> | 71 <dd>Part of the module has been |
| 72 loaded.</dd> |
| 73 </dl> |
| 74 </td> |
75 <td>zero or | 75 <td>zero or |
76 more</td> | 76 more</td> |
77 <td>After | 77 <td>After |
78 <code>loadstart</code> | 78 <code>loadstart</code> |
79 has been | 79 has been |
80 dispatched.</td> | 80 dispatched.</td> |
81 <td>Display a | 81 <td>Display a |
82 progress bar.</td> | 82 progress bar.</td> |
83 </tr> | 83 </tr> |
84 <tr class="row-even"><td><code>error</code></td> | 84 <tr class="row-even"><td><dl class="first last docutils"> |
85 <td>The Native Client | 85 <dt><code>error</code></dt> |
86 module failed to | 86 <dd>The Native Client module failed |
87 start execution | 87 to start execution (includes any |
88 (includes any | 88 error before or during |
89 error before or | 89 initialization of the module). |
90 during | 90 The <code>lastError</code> attribute |
91 initialization of | 91 (mentioned later) provides |
92 the module). The | 92 details on the error |
93 <code>lastError</code> | 93 (initialization failed, sel_ldr |
94 attribute | 94 did not start, and so on).</dd> |
95 (mentioned later) | 95 </dl> |
96 provides details | 96 </td> |
97 on the error | |
98 (initialization | |
99 failed, sel_ldr | |
100 did not start, | |
101 and so on).</td> | |
102 <td>zero or | 97 <td>zero or |
103 once</td> | 98 once</td> |
104 <td>After the | 99 <td>After the last |
105 last | |
106 <code>progress</code> | 100 <code>progress</code> |
107 event has | 101 event has been |
108 been | |
109 dispatched, | 102 dispatched, |
110 or after | 103 or after |
111 <code>loadstart</code> | 104 <code>loadstart</code> |
112 if no | 105 if no |
113 <code>progress</code> | 106 <code>progress</code> |
114 event was | 107 event was |
115 dispatched.</td> | 108 dispatched.</td> |
116 <td>Inform user | 109 <td>Inform user |
117 that the | 110 that the |
118 application | 111 application |
119 failed to | 112 failed to |
120 load.</td> | 113 load.</td> |
121 </tr> | 114 </tr> |
122 <tr class="row-odd"><td><code>abort</code></td> | 115 <tr class="row-odd"><td><dl class="first last docutils"> |
123 <td>Loading of the | 116 <dt><code>abort</code></dt> |
124 Native Client | 117 <dd>Loading of the NativeClient |
125 module was | 118 module was aborted by the user.</dd> |
126 aborted by the | 119 </dl> |
127 user.</td> | 120 </td> |
128 <td>zero or | 121 <td>zero or |
129 once</td> | 122 once</td> |
130 <td>After the | 123 <td>After the last |
131 last | |
132 <code>progress</code> | 124 <code>progress</code> |
133 event has | 125 event has been |
134 been | 126 dispatched, or |
135 dispatched, | 127 after |
136 or after | |
137 <code>loadstart</code> | 128 <code>loadstart</code> |
138 if no | 129 if no |
139 <code>progress</code> | 130 <code>progress</code> |
140 event was | 131 event was |
141 dispatched.</td> | 132 dispatched.</td> |
142 <td>It’s not | 133 <td>It’s not |
143 likely you | 134 likely you |
144 will want to | 135 will want to |
145 respond to | 136 respond to |
146 this event.</td> | 137 this event.</td> |
147 </tr> | 138 </tr> |
148 <tr class="row-even"><td><code>load</code></td> | 139 <tr class="row-even"><td><dl class="first last docutils"> |
149 <td>The Native Client | 140 <dt><code>load</code></dt> |
150 module was | 141 <dd>The Native Client module was |
151 successfully | 142 successfully loaded, and |
152 loaded, and | 143 execution was started. |
153 execution was | 144 (The module was initialized |
154 started. (The | 145 successfully.)</dd> |
155 module was | 146 </dl> |
156 initialized | 147 </td> |
157 successfully.)</td> | |
158 <td>zero or | 148 <td>zero or |
159 once</td> | 149 once</td> |
160 <td>After the | 150 <td>After the |
161 last | 151 last |
162 <code>progress</code> | 152 <code>progress</code> |
163 event has | 153 event has been |
164 been | 154 dispatched, or |
165 dispatched, | 155 after |
166 or after | |
167 <code>loadstart</code> | 156 <code>loadstart</code> |
168 if no | 157 if no |
169 <code>progress</code> | 158 <code>progress</code> |
170 event was | 159 event was |
171 dispatched.</td> | 160 dispatched.</td> |
172 <td>Remove the | 161 <td>Remove the |
173 progress bar.</td> | 162 progress bar.</td> |
174 </tr> | 163 </tr> |
175 <tr class="row-odd"><td><code>loadend</code></td> | 164 <tr class="row-odd"><td><dl class="first last docutils"> |
176 <td>Loading of the | 165 <dt><code>loadend</code></dt> |
177 Native Client | 166 <dd>Loading of the Native Client |
178 module has | 167 module has stopped. Load |
179 stopped. Load | 168 succeeded (<code>load</code>), failed |
180 succeeded | 169 (<code>error</code>), or was aborted |
181 (<code>load</code>), | 170 (<code>abort</code>).</dd> |
182 failed | 171 </dl> |
183 (<code>error</code>), or | 172 </td> |
184 was aborted | |
185 (<code>abort</code>).</td> | |
186 <td>once</td> | 173 <td>once</td> |
187 <td>After an | 174 <td>After an |
188 <code>error</code>, | 175 <code>error</code>, |
189 <code>abort</code>, or | 176 <code>abort</code>, or |
190 <code>load</code> | 177 <code>load</code> |
191 event was | 178 event was |
192 dispatched.</td> | 179 dispatched.</td> |
193 <td>Indicate | 180 <td>Indicate |
194 loading is | 181 loading is |
195 over | 182 over |
196 (regardless | 183 (regardless of |
197 of failure or | 184 failure or |
198 not).</td> | 185 not).</td> |
199 </tr> | 186 </tr> |
200 <tr class="row-even"><td><code>crash</code></td> | 187 <tr class="row-even"><td><dl class="first last docutils"> |
201 <td>The Native Client | 188 <dt><code>crash</code></dt> |
202 module is not | 189 <dd>The Native Client module is not |
203 responding (died | 190 responding (died on an |
204 on an | 191 <code>assert()</code> or <code>exit()</code>) |
205 <code>assert()</code> or | 192 after a successful load. This |
206 <code>exit()</code>) after | 193 event is unique to Native Client |
207 a successful | 194 and is not part of the W3C |
208 load. This event | 195 Progress Events standard. The |
209 is unique to | 196 <code>exitStatus</code> attribute |
210 Native Client and | 197 provides the numeric exit |
211 is not part of | 198 status.</dd> |
212 the W3C Progress | 199 </dl> |
213 Events standard. | 200 </td> |
214 The <code>exitStatus</code> | |
215 attribute provides | |
216 the numeric exit | |
217 status value.</td> | |
218 <td>zero or | 201 <td>zero or |
219 once</td> | 202 once</td> |
220 <td>After a | 203 <td>After a |
221 <code>loadend</code>.</td> | 204 <code>loadend</code>.</td> |
222 <td>Notify user | 205 <td>Notify user |
223 that the | 206 that the |
224 module did | 207 module did |
225 something | 208 something |
226 illegal.</td> | 209 illegal.</td> |
227 </tr> | 210 </tr> |
(...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
418 <li>In the case of explicit calls to <code>exit(n)</code>, the numeric value wil
l be | 401 <li>In the case of explicit calls to <code>exit(n)</code>, the numeric value wil
l be |
419 <code>n</code> (between 0 and 255).</li> | 402 <code>n</code> (between 0 and 255).</li> |
420 <li>In the case of crashes and calls to <code>abort()</code>, the numeric value
will | 403 <li>In the case of crashes and calls to <code>abort()</code>, the numeric value
will |
421 be non-zero, but the exact value will depend on the chosen libc and the | 404 be non-zero, but the exact value will depend on the chosen libc and the |
422 target architecture, and may change in the future. Applications should not | 405 target architecture, and may change in the future. Applications should not |
423 rely on the <code>exitStatus</code> value being stable in these cases, but the v
alue | 406 rely on the <code>exitStatus</code> value being stable in these cases, but the v
alue |
424 may nevertheless be useful for temporary debugging.</li> | 407 may nevertheless be useful for temporary debugging.</li> |
425 </ul> | 408 </ul> |
426 </section> | 409 </section> |
427 | 410 |
428 {{/partials.standard_nacl_api}} | 411 {{/partials.standard_nacl_article}} |
OLD | NEW |