IPython与第三方工具的集成使用指南
1. 导入方式的讨论
在实现某些功能时,有两种方式可以考虑:使用 sync_imports 和将导入语句移到函数体内部。这两种方式各有优缺点,具体如下表所示:
| 方式 | 优点 | 缺点 |
| ---- | ---- | ---- |
| sync_import | 1. 对环境进行集中控制
2. 明确导入的模块
3. 更易确定实际使用的库
4. 便于重构 | 1. 导入语句与使用处分离
2. 即使只有部分引擎使用,也会将模块导入到每个引擎
3. 违反PEP08风格指南
4. 重复调用函数时效率较低 |
| 函数体 | - | - |
这两种方式的冲突本质上是集中化和本地化的冲突。在复杂系统中,这种冲突很常见,且没有一种适用于所有项目的单一解决方案。开发者需要选择一种方法并持续使用,同时要留意该方法可能带来的问题。
2. LoadBalancedView的特点
LoadBalancedView使用调度器逐个执行作业,但不会阻塞。可以将其视为一个单一引擎,不同的是,在提交下一个作业时无需等待前一个作业完成。调度器负责确定每个作业的执行时间和位置。
其对函数执行的影响如下:
- 对于 apply* 函数,调度器提供一个引擎,然后在该引擎上执行 f, *args, **kwargs 。
- 对于 map* 函数,会迭代 *sequences
超级会员免费看
订阅专栏 解锁全文
9

被折叠的 条评论
为什么被折叠?



