Crashing Julia on Ctrl+C
- 主要语言
- Julia
- 星标
- 488
- 派生
- 90
- PR 合并指标
- 30 天内没有已合并 PR
描述
Loop termination crashes Julia process if I'm using PyPlot inside the loop.
PyPlot.backend is "qt5agg"
Julia 0.6.0
```
using PyPlot
for i=1:1000
plot(randn(32))
sleep(0)
end
```
```
Traceback (most recent call last):
File "C:\Users\Yury Parfenov\.julia\v0.6\Conda\deps\usr\lib\site-packages\matplotlib\backends\backend_qt5agg.py", line 197, in __draw_idle_agg
FigureCanvasAgg.draw(self)
File "C:\Users\Yury Parfenov\.julia\v0.6\Conda\deps\usr\lib\site-packages\matplotlib\backends\backend_agg.py", line 464, in draw
self.figure.draw(self.renderer)
File "C:\Users\Yury Parfenov\.julia\v0.6\Conda\deps\usr\lib\site-packages\matplotlib\artist.py", line 63, in draw_wrapper
draw(artist, renderer, *args, **kwargs)
File "C:\Users\Yury Parfenov\.julia\v0.6\Conda\deps\usr\lib\site-packages\matplotlib\figure.py", line 1144, in draw
renderer, self, dsu, self.suppressComposite)
File "C:\Users\Yury Parfenov\.julia\v0.6\Conda\deps\usr\lib\site-packages\matplotlib\image.py", line 139, in _draw_list_compositing_images
a.draw(renderer)
File "C:\Users\Yury Parfenov\.julia\v0.6\Conda\deps\usr\lib\site-packages\matplotlib\artist.py", line 63, in draw_wrapper
draw(artist, renderer, *args, **kwargs)
File "C:\Users\Yury Parfenov\.julia\v0.6\Conda\deps\usr\lib\site-packages\matplotlib\axes\_base.py", line 2426, in draw
mimage._draw_list_compositing_images(renderer, self, dsu)
File "C:\Users\Yury Parfenov\.julia\v0.6\Conda\deps\usr\lib\site-packages\matplotlib\image.py", line 139, in _draw_list_compositing_images
a.draw(renderer)
File "C:\Users\Yury Parfenov\.julia\v0.6\Conda\deps\usr\lib\site-packages\matplotlib\artist.py", line 63, in draw_wrapper
draw(artist, renderer, *args, **kwargs)
File "C:\Users\Yury Parfenov\.julia\v0.6\Conda\deps\usr\lib\site-packages\matplotlib\lines.py", line 822, in draw
drawFunc(renderer, gc, tpath, affine.frozen())
File "C:\Users\Yury Parfenov\.julia\v0.6\Conda\deps\usr\lib\site-packages\matplotlib\lines.py", line 1267, in _draw_lines
self._lineFunc(renderer, gc, path, trans)
File "C:\Users\Yury Parfenov\.julia\v0.6\Conda\deps\usr\lib\site-packages\matplotlib\lines.py", line 1293, in _draw_solid
renderer.draw_path(gc, path, trans)
File "C:\Users\Yury Parfenov\.julia\v0.6\Conda\deps\usr\lib\site-packages\matplotlib\backends\backend_agg.py", line 166, in draw_path
self._renderer.draw_path(gc, path, transform, rgbFace)
KeyboardInterrupt
```
贡献指南
这个仓库没有索引到贡献指南
调研方向
从使用 PyPlot 的 Julia 循环和报告的 qt5agg traceback 开始,然后跟踪 Ctrl+C 如何到达 matplotlib 的 backend_qt5agg draw 路径。在所述的 Julia 0.6.0 设置上重现崩溃;完成标准是中断循环不再导致 Julia 进程崩溃。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- julia, matplotlib, python
- 领域
- data-visualization
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 38/100