You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by pd...@apache.org on 2014/05/15 09:08:41 UTC

svn commit: r1594796 - /felix/sandbox/pderop/dependencymanager-prototype/dm/src/dm/impl/ComponentImpl.java

Author: pderop
Date: Thu May 15 07:08:41 2014
New Revision: 1594796

URL: http://svn.apache.org/r1594796
Log:
Added a TODO in the setExecutor() method, and also added some comments explaining why I introduced this new method in the API.

Modified:
    felix/sandbox/pderop/dependencymanager-prototype/dm/src/dm/impl/ComponentImpl.java

Modified: felix/sandbox/pderop/dependencymanager-prototype/dm/src/dm/impl/ComponentImpl.java
URL: http://svn.apache.org/viewvc/felix/sandbox/pderop/dependencymanager-prototype/dm/src/dm/impl/ComponentImpl.java?rev=1594796&r1=1594795&r2=1594796&view=diff
==============================================================================
--- felix/sandbox/pderop/dependencymanager-prototype/dm/src/dm/impl/ComponentImpl.java (original)
+++ felix/sandbox/pderop/dependencymanager-prototype/dm/src/dm/impl/ComponentImpl.java Thu May 15 07:08:41 2014
@@ -129,6 +129,11 @@ public class ComponentImpl implements Co
 	}
 	
 	public Component setExecutor(Executor executor) {
+	    // TODO. This method is used when the user want to provide a custom executor (for example, one from an actor
+	    // library, or a queuing library like hawtdispatch "Serial Queues". However, we still have to decorate the executor
+	    // with one which detects reentrant scheduling (in DM4, tasks scheduled internally from within DM4 must be executed
+	    // immediately (inline execution). To ensure this, the custom executor could be decorated with one, which could use
+	    // a thread local with a flag telling if the current thread is already being executed from within DM4.
 	    m_executor = executor;
 	    return this;
 	}