Author: buildbot
Date: Tue Mar 10 13:30:51 2015
New Revision: 943164
Log:
Staging update by buildbot for felix
Modified:
websites/staging/felix/trunk/content/ (props changed)
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-dependency-manager-4/reference/thread-model.html
Propchange: websites/staging/felix/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Tue Mar 10 13:30:51 2015
@@ -1 +1 @@
-1665491
+1665537
Modified:
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-dependency-manager-4/reference/thread-model.html
==============================================================================
---
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-dependency-manager-4/reference/thread-model.html
(original)
+++
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-dependency-manager-4/reference/thread-model.html
Tue Mar 10 13:30:51 2015
@@ -69,7 +69,7 @@
<h1>Apache Felix Dependency Manager - Thread Model</h1>
<p>This section gives a brief overview of the default thread model used
by Dependency Manager, and also explains how to start and handle components
concurrently.</p>
-<h1 id="default-thread-model">Default Thread Model</h1>
+<h2 id="default-thread-model">Default thread model</h2>
<p>By default, Dependency Manager uses a lock-free/single thread model:</p>
<ul>
<li>When an external event that influence the state of a Component is taking
place (for example, when a service dependency on which the Component is
depending on is registered in the
@@ -86,7 +86,7 @@ then a job (J2) for this new event is ju
<p>This mechanism allows to serially handle all Component events (service
dependencies) in FIFO order without maintaining any locks.</p>
<p>The following diagram illustrates the thread model we just described:</p>
<p><img src="./diagrams/serial-queue.png" alt="Serial Queue" style="width:
600px"/></p>
-<h1 id="enabling-parallelism-with-a-componentexecutorfactory">Enabling
parallelism with a ComponentExecutorFactory</h1>
+<h2 id="enabling-parallelism-with-a-componentexecutorfactory">Enabling
parallelism with a <em>ComponentExecutorFactory</em></h2>
<p>As described above, all the external events that influence the state of a
given component are handed by jobs scheduled in the Serial Queue of the
Component, and the jobs are getting
executed serially by a single "master" thread. So usually, bundles are started
from a single thread, meaning that all Components are then activated
synchronously.</p>
<p>But when you register in the OSGi service registry a
ComponentExecutorFactory, that factory will be used by DependencyManager to
create an Executor of your choice for each Component,
@@ -102,7 +102,7 @@ is registered (In this way, it is not ne
<p>Some class name prefixes can also be negated (using "!"), in order to
exclude some components from the list of components using the
ComponentExecutorFactory service.</p>
<p>Notice that if the ComponentExecutorFactory itself and all its dependent
services are defined using the Dependency Manager API, then you have to list
the package of such components with a
"!" prefix, in order to indicate that those components must not wait for a
ComponentExecutorFactory service (since they are part of the
ComponentExecutorFactory implementation !). </p>
-<h3
id="examples-for-the-usage-of-the-orgapachefelixdependencymanagerparallel-property">Examples
for the usage of the "org.apache.felix.dependencymanager.parallel"
property:</h3>
+<h3
id="examples-usage-of-the-orgapachefelixdependencymanagerparallel-property">Examples
usage of the <em>org.apache.felix.dependencymanager.parallel</em>
property:</h3>
<div class="codehilite"><pre><span class="n">org</span><span
class="p">.</span><span class="n">apache</span><span class="p">.</span><span
class="n">felix</span><span class="p">.</span><span
class="n">dependencymanager</span><span class="p">.</span><span
class="n">parallel</span><span class="p">=</span><span class="o">*</span>
<span class="o">-></span> <span class="n">means</span> <span
class="n">all</span> <span class="n">components</span> <span
class="n">must</span> <span class="n">be</span> <span class="n">cached</span>
<span class="n">until</span> <span class="n">a</span> <span
class="n">ComponentExecutorFactory</span> <span class="n">comes</span> <span
class="n">up</span><span class="p">.</span>
@@ -164,7 +164,7 @@ is registered (In this way, it is not ne
<li><a
href="https://svn.apache.org/repos/asf/felix/trunk/dependencymanager/org.apache.felix.dependencymanager.samples/src/org/apache/felix/dependencymanager/samples/tpool/">see
the executor factory</a> sample code and README file to up-to-date
informations.</li>
</ul>
<div class="timestamp" style="margin-top: 30px; font-size: 80%;
text-align: right;">
- Rev. 1665446 by pderop on Tue, 10 Mar 2015 10:26:26 +0000
+ Rev. 1665537 by pderop on Tue, 10 Mar 2015 13:30:25 +0000
</div>
<div class="trademarkFooter">
Apache Felix, Felix, Apache, the Apache feather logo, and the Apache
Felix project