| <?xml version="1.0" encoding="iso-8859-1" ?> |
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" |
| "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| <!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd--> |
| <html xmlns="http://www.w3.org/1999/xhtml" |
| > |
| <head><title>Dynamic Actors 6</title> |
| <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> |
| <meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" /> |
| <meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" /> |
| <!-- xhtml,3,next,html --> |
| <meta name="src" content="etrice-doc.tex" /> |
| <meta name="date" content="2013-10-21 12:44:00" /> |
| <link rel="stylesheet" type="text/css" href="etrice-doc.css" /> |
| </head><body |
| > |
| <!--l. 247--><div class="crosslinks"><p class="noindent">[<a |
| href="etrice-docse15.html" >next</a>] [<a |
| href="etrice-docse13.html" >prev</a>] [<a |
| href="etrice-docse13.html#tailetrice-docse13.html" >prev-tail</a>] [<a |
| href="#tailetrice-docse14.html">tail</a>] [<a |
| href="etrice-docch3.html#etrice-docse14.html" >up</a>] </p></div> |
| <h3 class="sectionHead"><span class="titlemark">3.6 </span> <a |
| id="x19-830003.6"></a>Dynamic Actors 6</h3> |
| <!--l. 249--><p class="noindent" >This example is contained in <span |
| class="ec-lmtt-10">org.eclipse.etrice.examples.dynamicactors6</span>. |
| </p><!--l. 251--><p class="noindent" > |
| </p> |
| <h4 class="subsectionHead"><span class="titlemark">3.6.1 </span> <a |
| id="x19-840003.6.1"></a>Purpose</h4> |
| <!--l. 253--><p class="noindent" >The example demonstrates the use of nested dynamic actors. |
| </p><!--l. 255--><p class="noindent" > |
| </p> |
| <h4 class="subsectionHead"><span class="titlemark">3.6.2 </span> <a |
| id="x19-850003.6.2"></a>Details</h4> |
| <!--l. 257--><p class="noindent" >In this example the dynamically created actor <span |
| class="ec-lmtt-10">Optional2 </span>has again an optional reference two levels down in its hierarchy. On |
| creation it immediately creates a nested dynamic actor of class <span |
| class="ec-lmtt-10">Optional1 </span>which is sending <span |
| class="ec-lmtt-10">hello() </span>back to the outer |
| <span |
| class="ec-lmtt-10">Container</span>. |
| </p><!--l. 261--><p class="noindent" > |
| </p> |
| <h4 class="subsectionHead"><span class="titlemark">3.6.3 </span> <a |
| id="x19-860003.6.3"></a>Noteworthy</h4> |
| <ul class="itemize1"> |
| <li class="itemize">the generated MSC <span |
| class="ec-lmtt-10">main_Async.seq </span>is a good illustration of the dynamic changes in the system structure |
| </li> |
| <li class="itemize">when a dynamic actor is created its structure is there immediately and all ports are connected. But the initial |
| transition is executed asynchronously. So after the outer dynamic actor is created the port of the <span |
| class="ec-lmtt-10">Container</span> |
| is not yet connected because the initial transition which is responsible for the creation of the inner dynamic |
| actor wasn’t executed yet. So a message sent from this port directly after creation of the outer dynamic actor |
| would get lost.</li></ul> |
| |
| |
| <!--l. 271--><div class="crosslinks"><p class="noindent">[<a |
| href="etrice-docse15.html" >next</a>] [<a |
| href="etrice-docse13.html" >prev</a>] [<a |
| href="etrice-docse13.html#tailetrice-docse13.html" >prev-tail</a>] [<a |
| href="etrice-docse14.html" >front</a>] [<a |
| href="etrice-docch3.html#etrice-docse14.html" >up</a>] </p></div> |
| <!--l. 271--><p class="noindent" ><a |
| id="tailetrice-docse14.html"></a> </p> |
| </body></html> |