我有两台机器,其中git bash auto complete非常慢.当我点击标签时,文件名可能需要8到10秒才能完成.只有当auto complete是git命令的一部分时,才会发生这种情况.自动完成cd工作正常.git命令的实际执行运行正常.
我在用 git version 1.8.3-preview20130601
$ git count-objects -vH
count: 9
size: 10.23 KiB
in-pack: 2488
packs: 1
size-pack: 18.68 MiB
prune-packable: 0
garbage: 0
size-garbage: 0 bytes
Run Code Online (Sandbox Code Playgroud)
可能是什么导致了这个?有没有可能的解决办法?
编辑:我更新到Git (version 1.8.4-preview20130916),问题仍然存在.我注意到在ConEmu中运行bash shell时,在长时间停顿期间显示在底部的命令是uniq.exe.似乎对可执行文件的调用正在扼杀时间.
编辑:更新git version 1.9.0.msysgit.0已缓解了大部分问题.延迟现在只有1到2秒.其他命令cd几乎是即时的(<0.5s).我也不会再看到uniq.exe跑步了sh.exe.
当使用 python 多处理池时,是否可以在准备好结果时获取结果?
例如,像这样的东西,在results准备好时才产生结果,而不仅仅是在所有结果都准备好时才产生结果。
args = [ ... ]
def foo():
pass
pool = multiprocessing.Pool()
results = pool.map_async(foo, l)
for result in results:
save_result(result)
Run Code Online (Sandbox Code Playgroud)
我能想到的唯一方法是
args = [ ... ]
results = []
def foo():
pass
pool = multiprocessing.Pool()
for arg in args:
results.append(pool.apply_async(foo, arg))
while results:
for result in results:
if result.ready():
save_result(result.get())
Run Code Online (Sandbox Code Playgroud)
我在 Windows 7 x64 上使用 Python 3.4