diff options
author | Jay Freeman <saurik@saurik.com> | 2009-04-27 10:05:44 +0000 |
---|---|---|
committer | Jay Freeman <saurik@saurik.com> | 2009-04-27 10:05:44 +0000 |
commit | 0ab69dd9f7b48237939e03b775fb7b41d3b2438d (patch) | |
tree | 4ff087aaff14b346d8446b6d0ef53c986454c0f8 /data/apt7/parallel.diff | |
parent | a3d69f9e957d210a1b7415ed3d2621d34be48c92 (diff) |
Starting factor of apt7.
git-svn-id: http://svn.telesphoreo.org/trunk@606 514c082c-b64e-11dc-b46d-3d985efe055d
Diffstat (limited to 'data/apt7/parallel.diff')
-rw-r--r-- | data/apt7/parallel.diff | 33 |
1 files changed, 0 insertions, 33 deletions
diff --git a/data/apt7/parallel.diff b/data/apt7/parallel.diff deleted file mode 100644 index 40d28fb3d..000000000 --- a/data/apt7/parallel.diff +++ /dev/null @@ -1,33 +0,0 @@ -diff -ru apt-0.6.46.4.1/apt-pkg/acquire.cc apt-0.6.46.4.1+iPhone/apt-pkg/acquire.cc ---- apt-0.6.46.4.1/apt-pkg/acquire.cc 2006-12-04 14:37:34.000000000 +0000 -+++ apt-0.6.46.4.1+iPhone/apt-pkg/acquire.cc 2009-01-21 10:47:16.000000000 +0000 -@@ -238,9 +238,27 @@ - /* Single-Instance methods get exactly one queue per URI. This is - also used for the Access queue method */ - if (Config->SingleInstance == true || QueueMode == QueueAccess) -- return U.Access; -+ return U.Access; -+ string name(U.Access + ':' + U.Host); - -- return U.Access + ':' + U.Host; -+ int parallel(_config->FindI("Acquire::"+U.Access+"::MaxParallel",8)); -+ if (parallel <= 0) -+ return name; -+ -+ typedef map<string, int> indexmap; -+ static indexmap indices; -+ -+ pair<indexmap::iterator, bool> cache(indices.insert(indexmap::value_type(name, -1))); -+ if (cache.second || cache.first->second == -1) { -+ int &index(indices[U.Access]); -+ if (index >= parallel) -+ index = 0; -+ cache.first->second = index++; -+ } -+ -+ ostringstream value; -+ value << U.Access << "::" << cache.first->second; -+ return value.str(); - } - /*}}}*/ - // Acquire::GetConfig - Fetch the configuration information /*{{{*/ |