小编Gar*_*ber的帖子

所有示例concurrent.futures代码都失败了"BrokenProcessPool"

在创建我需要的实际应用程序之前,我试图对此有一个基本的了解.我最近从2.7移到了3.3.

从python文档直接复制粘贴此代码失败,这里稍微简单的示例也是如此.

这是我的代码,派生自第二个例子:

import concurrent.futures

nums = [1,2,3,4,5,6,7,8,9,10]

def f(x):
    return x * x

# Make sure the map and function are working
print([val for val in map(f, nums)])

# Test to make sure concurrent map is working
with concurrent.futures.ProcessPoolExecutor() as executor:
    for item in executor.map(f, nums):
        print(item)
Run Code Online (Sandbox Code Playgroud)

这是输出:

[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
Traceback (most recent call last):
  File "<string>", line 420, in run_nodebug
  File "<module1>", line 13, in …
Run Code Online (Sandbox Code Playgroud)

python python-3.x

15
推荐指数
2
解决办法
1万
查看次数

如何实现高速、一致的采样?

要考虑的应用类型是示波器或高速数据记录器。我有一个检索所需信息的函数,我只需要计算如何一遍又一遍地、非常快速且高精度地调用它。

time.sleep() 有限制,我不认为这是要走的路。

我已经研究了内置的事件调度程序,但我认为它不够精确并且不能完全满足我的需求。

对此的要求是:

  • 高速采样。10ms 是最多的要求。
  • 高精度间隔。在 10ms 时,10% 的误差是可以接受的 (±1ms)。
  • 相当低的 CPU 使用率,在 10 毫秒时可以接受一些负载,但对于 100 毫秒及以上的时间间隔,它应该小于 ~5%。我知道这是主观的,我想我的意思是占用 CPU 是不可接受的。
  • 理想情况下,定时器将以间隔时间初始化,然后在需要时启动。然后应以正确的间隔一遍又一遍地调用所需的函数,直到计时器停止。
  • 它只会(不是必须)只在 Windows 机器上运行。

是否有满足这些要求的现有库?我不想重新发明轮子,但如果必须的话,我可能会使用 Windows 多媒体计时器 (winmm.dll)。对此有何评论/建议?

python

4
推荐指数
1
解决办法
2519
查看次数

Files.copy的阻止/同步版本

我正在尝试将文件从一个目录复制到另一个目录,但我希望该调用是阻塞的,这样程序只有在整个文件传输后才会执行.

目前我正在使用Files.copy(),它使用非阻塞IO并立即返回.我有什么其他选项(最好内置到java标准库中)来解决这个问题?

非常感谢,加雷思

java

3
推荐指数
1
解决办法
1940
查看次数

标签 统计

python ×2

java ×1

python-3.x ×1