7b860947b1
ProcDispatcher: skeleton of the processing loop
...
including a draft of the Looper control component and the
invocation of the object monitor for waiting on condition var
2016-12-15 22:15:20 +01:00
00077d0431
ProcDispatcher: decide on requirements and implementation structure ( #1049 )
2016-12-15 20:48:35 +01:00
7e65dda771
draft request to halt the dispatcher loop
2016-12-15 06:21:59 +01:00
86f446c197
better control of the shutdown sequence
...
holding the SessionCommandService in a unique_ptr allows us to
close the Interface reliably *before* the Loop is halted.
2016-12-15 05:54:48 +01:00
a3c22b8aff
SessionCommandService to be operated by the DispatcherLoop
2016-12-15 05:38:12 +01:00
4d45dfd4be
introduce CommandDispatch interface
...
this allows to let the DispatcherLoop actually serve
as implementation facility for the SessionCommandService
2016-12-15 05:21:03 +01:00
479f4170c2
implement activated state
...
need to keep state variables on both levels,
since the session manager (lifecycle) "opens" the session
for external access by starting the dispatcher; it may well happen
thus that the session starts up, while the *session subsystem*
is not(yet) started
2016-12-14 04:57:08 +01:00
a853851447
add complete locking to the ProcDispatcher
...
on both levels
- the front-end needs locking to ensure consistent state (memory barrier)
- the back-end nees locking to coordinate command processing
2016-12-14 04:18:58 +01:00
4c30c349aa
change the way command dispatching is controlled by the session
...
"command dispatching" == the public session interface
so we'll better implement this important causal link directly,
instead of some obscure trickery with lifecycle events.
2016-12-14 03:59:13 +01:00
8da9858056
draft skeleton of the dispatcher loop thread
2016-12-13 04:45:00 +01:00
1a8408afb5
rework ProcDispatcher to run dispatcher thread as PImpl
...
note the idea is to have a joinable thread, where deleting
the enclosing object blocks until the thread is finished
2016-12-13 04:34:28 +01:00
0ea37402d2
Ticket #934 : switch entire code-base to use the new Singleton factory
...
lib::Depend<TY> works as drop-in replacement for lib::Singleton<TY>
This changeset removes the convoluted special cases like
SingletonSub and MockInjector.
2013-10-20 03:19:36 +02:00
b9d1899486
cleanup: rectify Proc-Layer namespaces (II)
2011-12-02 17:50:44 +01:00
3f1b7651e9
GPL header whitespace
2010-12-17 23:28:49 +01:00
8c21f21acc
namespace cleanup: bring Singleton and Factory into lib::
2009-10-11 05:57:41 +02:00
da8be6861c
WIP some musing about opening the session interface
2009-10-11 05:57:40 +02:00
ba37045b48
WIP: interface/framwork skeleton
2009-06-08 04:50:29 +02:00