如何打印'sfLapply`的输出调用R
问题描述:
我通过sfLapply
打了一个多线程调用,我在sfLapply
中调用的函数打印了一些信息,如果单次调用,它会打印信息到屏幕,但是可以不在sfLapply
,我该怎么办?如何打印'sfLapply`的输出调用R
> library(snow)
> library(snowfall)
>
> sfInit(parallel=T,cpus=3)
snowfall 1.84-6 initialized (using snow 0.3-13): parallel execution on 3 CPUs.
>
> test <-function(i)
+ {
+ sum = 0
+ for(n in 1:i)
+ {
+ sum = n+sum
+ print(sum)
+ }
+ print(sum)
+ }
>
> df = c(1,2,3)
>
> test(2) #can print some output needed
[1] 1
[1] 3
[1] 3
> k = sfLapply(df,test) #print nothing
>
答
我现在......有一个名为slaveOutfile
可以捕捉的sfLapply
输出信息的一个参数...
我写了使用的MULT线程循环C++函数。但是当两个线程将输出发送给R时程序崩溃了。因为R不支持它。我不知道这个问题是否仍然存在。 – user1436187