>> >In multi thread you can kill/restart a blocked component without to
>> >restart the whole engine.
>> >
>> >With single thread this is not feasible
>> 
>> disagree. assuming you can detect the blocked component, you just
>> avoid running it any more (i.e. remove it from the list of active
>> components). you might also instantiate a new instance of it (though
>> this is unlikely to solve whatever problem caused it to block).
>
>True, but if a plugin in a multi thread system blocks the others can just
>carry on and the blocked plugin can be ignored. Not that I think that
>is very useful.

Not really. In all the designs being talked about, there is a
controlling object that waits for worker objects to finish their
work. The controlling object blocks while waiting. If a worked object
doesn't finish, then everything is blocked.

Anyway, we seem to be in agreement :)

Reply via email to