blob: bd024f0edf36e98db9d119c4ca6b6d19ede41c53 [file] [log] [blame]
<?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 3</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. 176--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse12.html" >next</a>] [<a
href="etrice-docse10.html" >prev</a>] [<a
href="etrice-docse10.html#tailetrice-docse10.html" >prev-tail</a>] [<a
href="#tailetrice-docse11.html">tail</a>] [<a
href="etrice-docch3.html#etrice-docse11.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">3.3 </span> <a
id="x16-710003.3"></a>Dynamic Actors 3</h3>
<!--l. 178--><p class="noindent" >This example is contained in <span
class="ec-lmtt-10">org.eclipse.etrice.examples.dynamicactors3</span>.
</p><!--l. 180--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">3.3.1 </span> <a
id="x16-720003.3.1"></a>Purpose</h4>
<!--l. 182--><p class="noindent" >The example demonstrates the usage of an optional actor array. It is shown that several actor classes derived from the type of
the optional actor reference can be created as array members. The array members can be destroyed in arbitrary order and the
array size grows and shrinks as appropriate.
</p><!--l. 186--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">3.3.2 </span> <a
id="x16-730003.3.2"></a>Details</h4>
<!--l. 188--><p class="noindent" >This example again is similar to example 1. One difference is that the (scalar) optional actor is replaced by a replicated
optional actor (or array of optional actors if you wish). The port of the <span
class="ec-lmtt-10">Container </span>was also changed to a replicated port. All
replication factors in this example are of arbitrary multiplicity (*). The sizes vary dynamically and are unbound as far as the
model is concerned.
</p><!--l. 193--><p class="noindent" >The behavior was changed to the following: Two instances of different classes are created as members of this array and both
are deleted and one is created again. The replicated port is used to send (broadcast) messages to the optional
actors.
</p><!--l. 197--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">3.3.3 </span> <a
id="x16-740003.3.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">careful inspection of the console output reveals that objects are created and destroyed as expected</li></ul>
<!--l. 204--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse12.html" >next</a>] [<a
href="etrice-docse10.html" >prev</a>] [<a
href="etrice-docse10.html#tailetrice-docse10.html" >prev-tail</a>] [<a
href="etrice-docse11.html" >front</a>] [<a
href="etrice-docch3.html#etrice-docse11.html" >up</a>] </p></div>
<!--l. 204--><p class="noindent" ><a
id="tailetrice-docse11.html"></a> </p>
</body></html>