function - Julia 在循环打印消息之前等待函数完成

标签 function loops julia

我在 Julia 中有一个函数需要在循环中执行操作。一个参数被传递给循环,这个参数越大,函数越慢。我想有一条消息来知道它在哪个迭代中,但似乎 Julia 在打印任何东西之前等待整个函数完成。这是 Julia 1.4。这种行为不在 Julia 1.3 上。
一个例子是这样的

function f(x)
   rr=0.000:0.0001:x
   aux=0
   for r in rr
      print(r, " ")
      aux+=veryslowfunction(r)
   end
  return aux
end

事实上,当调用 f 时,它在完成之前不会打印任何内容。

最佳答案

您需要在 print 后面添加命令:

flush(stdout)

解释

进程的标准输出通常被缓冲。特定的缓冲区大小和行为取决于您的系统设置和终端类型。
通过刷新缓冲区,您可以确保将内容实际发送到终端。

关于function - Julia 在循环打印消息之前等待函数完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60982177/

相关文章:

arrays - 实例成员不能用于数组类型

c++ - 将任何 lambda 存储为 vector 中的公共(public)回调对象

按大小比较 C 中的 2 个文件

java - Java中的二进制搜索代码无法运行

animation - 如何在 Julia 中绘制多个 3D 轨迹(大概使用 for 循环?)——还有,如何随着时间的推移制作动画?

c++ - 将 double 组转换为仅具有 double 成员的结构数组而不复制数据

javascript - javascript中的多个函数调用,即combine(foo)(bar)

C - 有一个简单的循环来进行算术计算;探查器显示这是一个瓶颈。如何加快速度?

javascript - 循环遍历表格单元格并使用 ForEach onClick - Javascript/Jquery

julia - Pkg.update() 和 Pkg.rm() 挂起