mirror of
https://gerrit.googlesource.com/git-repo
synced 2024-12-21 07:16:21 +00:00
e2126652a3
The threaded 'repo sync' implementation would very often freeze the process when interrupted by the user with Ctrl-C. The only solution being to kill -9 the process explicitly from another terminal. The reason for this is best explained here: http://snakesthatbite.blogspot.fr/2010/09/cpython-threading-interrupting.html This patch makes all helper sync threads 'daemon', which allows the process to terminate immediately on Ctrl-C. Note that this will forcefully kill all threads in case of interruption; this is generally a bad thing, but: 1/ This is equivalent to calling kill -9 in another terminal, which is the _only_ thing that can currently stop the process. 2/ There doesn't seem to be a way to tell the worker threads to gently stop when they are in a blocking operation anyway (even in the non-threaded case). + Do the same for "repo status -j<count>". Change-Id: Ieaf45b0eacee36f35427f8edafd87415c2aa7be4 |
||
---|---|---|
.. | ||
__init__.py | ||
abandon.py | ||
branches.py | ||
checkout.py | ||
cherry_pick.py | ||
diff.py | ||
download.py | ||
forall.py | ||
grep.py | ||
help.py | ||
init.py | ||
list.py | ||
manifest.py | ||
overview.py | ||
prune.py | ||
rebase.py | ||
selfupdate.py | ||
smartsync.py | ||
stage.py | ||
start.py | ||
status.py | ||
sync.py | ||
upload.py | ||
version.py |