VCS Interface classes (async execution)
Jakob Petsovits
jpetso at gmx.at
Wed May 2 15:39:10 UTC 2007
On Monday, 30. April 2007, Andreas Pakulat wrote:
> I present to you our new VCS interface classes (that I finally managed
> to write up, based on the enourmus thread some time ago).
Other question: is it ok to let each VCS plugin reinvent threading?
Is it really necessary to let plugins keep track of their action calls?
How long after the call are they supposed to keep the action ids?
How about defining the interface synchronous and having one threading wrapper
in shell itself? Like,
AsyncBasicVersionControlWrapper asyncBasicVC =
new AsyncBasicVersionControlWrapper (basicVC);
asyncBasicVC->add( myDir, IBasicVersionControl::Recursive );
doOtherStuffInTheMeantime();
Then the plugin still has to be threadsafe, but at least doesn't need to take
care of all that nasty stuff by itself, shell would do it for them.
As a bonus, we get proper method signatures, with typesafe, nicely documented
and immediately recognizable return values.
What do you think?
More information about the KDevelop-devel
mailing list