URL:
<http://gna.org/bugs/?func=detailitem&item_id=2762>
Summary: Mutual exclusion mechanism for process management.
Project: Xtla
Submitted by: moy
Submitted on: Sat 08/13/2005 at 22:38
Category: xtla-core.el
Priority: 1 - Later
Status: None
Assigned to: None
Originator Email:
Open/Closed: Open
Planned Release: None
Type of request: big feature
Merge available: None
merge request:
Fixed Release:
Test case in xtla-tests.el:
_______________________________________________________
Details:
Mutual exclusion mechanism for process management.
=> Never two commands writting on the same tree.
This is linked to bug #2524 : When a process is to be launched, there should
be a condition depending on the other process running.
If there are too many processes running, queue it. If the process should not
be ran concurrently with one of the processes running, queue it. Otherwise,
run it.
When a process terminates, run the queued processes that become eligible.
There sould be a table somewhere saying which command does what to the tree.
For example:
"diff", "changes", "status" => read
"merge" => write
"commit" => read-write
Then, we can implement a reader-writer exclusion mechanism. (concurrent read
allowed, but write is in mutual exclusion with everything else). This should
be done on a per-tree basis.
Once this is implemented, we can for example run "merge" and before the
process completes, "status", and status will wait for "merge" to complete
before running.
_______________________________________________________
Reply to this item at:
<http://gna.org/bugs/?func=detailitem&item_id=2762>
_______________________________________________
Message sent via/by Gna!
http://gna.org/