首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >一次运行多个循环

一次运行多个循环
EN

Stack Overflow用户
提问于 2017-09-11 22:40:32
回答 1查看 62关注 0票数 1

因此,我正在研究云上的负载均衡,其中我将拥有多个任务或cloudlet,它们将在不同的am上运行。我创建了如下的cloudlet:

代码语言:javascript
复制
cloudlets = {}

cloudlets_no = 400
a = ""
for x in range(cloudlets_no):
    a = "cloudlet_id_{}".format(x)

    cloudlets[a] = 1000 + (random.randint(0,100))


sorted_keys = []

sorted_cloudlets = sorted(cloudlets, key=cloudlets.__getitem__)
for k in sorted_cloudlets:
    sorted_keys.append(k)
    print "{} : {}".format(k, cloudlets[k])

现在,为了在虚拟机(最初是单个虚拟机)上执行这些任务,

代码语言:javascript
复制
start = time.time()
for x in sorted_keys:
    rem = cloudlets[x]
    while rem != 0:
        rem -= 1

end = time.time()

现在的问题是,我想创建多个虚拟机,并且希望同时运行它们,这就是为什么我需要一次运行多个循环。有没有办法实现这一点或任何其他可能的解决办法。

任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

发布于 2017-09-11 22:57:22

你想要研究的“一般”主题领域是线程。

线程允许您的代码分支,并同时运行多组指令。这是一个复杂的主题,要详细说明,但基本思想是每个处理的“线程”独立运行,并与其他线程同时运行(您的操作系统负责如何在硬件上实际实现这一点)。

在python中,负责线程化的主要模块有:

线程- https://docs.python.org/2/library/threading.html#module-threading

多处理- https://docs.python.org/2/library/multiprocessing.html#module-multiprocessing

当然,这里要提到的太多了,但希望这个答案中有足够的关键字来让你开始研究。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46158380

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档